OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 8529 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8540 ast_context()->ReturnInstruction(char_code, expr->id()); | 8540 ast_context()->ReturnInstruction(char_code, expr->id()); |
8541 return true; | 8541 return true; |
8542 } | 8542 } |
8543 AddInstruction(char_code); | 8543 AddInstruction(char_code); |
8544 HInstruction* result = | 8544 HInstruction* result = |
8545 HStringCharFromCode::New(zone(), context, char_code); | 8545 HStringCharFromCode::New(zone(), context, char_code); |
8546 ast_context()->ReturnInstruction(result, expr->id()); | 8546 ast_context()->ReturnInstruction(result, expr->id()); |
8547 return true; | 8547 return true; |
8548 } | 8548 } |
8549 break; | 8549 break; |
| 8550 case kStringFromCharCode: |
| 8551 if (argument_count == 2 && check_type == RECEIVER_MAP_CHECK) { |
| 8552 AddCheckConstantFunction(expr->holder(), receiver, receiver_map); |
| 8553 HValue* argument = Pop(); |
| 8554 HValue* context = environment()->LookupContext(); |
| 8555 Drop(1); // Receiver. |
| 8556 HInstruction* result = |
| 8557 HStringCharFromCode::New(zone(), context, argument); |
| 8558 ast_context()->ReturnInstruction(result, expr->id()); |
| 8559 return true; |
| 8560 } |
| 8561 break; |
8550 case kMathExp: | 8562 case kMathExp: |
8551 if (!FLAG_fast_math) break; | 8563 if (!FLAG_fast_math) break; |
8552 // Fall through if FLAG_fast_math. | 8564 // Fall through if FLAG_fast_math. |
8553 case kMathRound: | 8565 case kMathRound: |
8554 case kMathFloor: | 8566 case kMathFloor: |
8555 case kMathAbs: | 8567 case kMathAbs: |
8556 case kMathSqrt: | 8568 case kMathSqrt: |
8557 case kMathLog: | 8569 case kMathLog: |
8558 case kMathSin: | 8570 case kMathSin: |
8559 case kMathCos: | 8571 case kMathCos: |
(...skipping 3115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11675 } | 11687 } |
11676 } | 11688 } |
11677 | 11689 |
11678 #ifdef DEBUG | 11690 #ifdef DEBUG |
11679 if (graph_ != NULL) graph_->Verify(false); // No full verify. | 11691 if (graph_ != NULL) graph_->Verify(false); // No full verify. |
11680 if (allocator_ != NULL) allocator_->Verify(); | 11692 if (allocator_ != NULL) allocator_->Verify(); |
11681 #endif | 11693 #endif |
11682 } | 11694 } |
11683 | 11695 |
11684 } } // namespace v8::internal | 11696 } } // namespace v8::internal |
OLD | NEW |