| OLD | NEW |
| 1 // Copyright 2010 the V8 project authors. All rights reserved. | 1 // Copyright 2010 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 3674 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3685 | 3685 |
| 3686 void CodeGenerator::GenerateMathCos(ZoneList<Expression*>* args) { | 3686 void CodeGenerator::GenerateMathCos(ZoneList<Expression*>* args) { |
| 3687 ASSERT_EQ(args->length(), 1); | 3687 ASSERT_EQ(args->length(), 1); |
| 3688 // Load the argument on the stack and jump to the runtime. | 3688 // Load the argument on the stack and jump to the runtime. |
| 3689 Load(args->at(0)); | 3689 Load(args->at(0)); |
| 3690 frame_->CallRuntime(Runtime::kMath_cos, 1); | 3690 frame_->CallRuntime(Runtime::kMath_cos, 1); |
| 3691 frame_->EmitPush(r0); | 3691 frame_->EmitPush(r0); |
| 3692 } | 3692 } |
| 3693 | 3693 |
| 3694 | 3694 |
| 3695 void CodeGenerator::GenerateNumberIsFinite(ZoneList<Expression*>* args) { |
| 3696 ASSERT_EQ(args->length(), 1); |
| 3697 // Load the argument on the stack and jump to the runtime. |
| 3698 Load(args->at(0)); |
| 3699 frame_->CallRuntime(Runtime::kNumberIsFinite, 1); |
| 3700 frame_->EmitPush(r0); |
| 3701 } |
| 3702 |
| 3703 |
| 3695 void CodeGenerator::GenerateObjectEquals(ZoneList<Expression*>* args) { | 3704 void CodeGenerator::GenerateObjectEquals(ZoneList<Expression*>* args) { |
| 3696 VirtualFrame::SpilledScope spilled_scope; | 3705 VirtualFrame::SpilledScope spilled_scope; |
| 3697 ASSERT(args->length() == 2); | 3706 ASSERT(args->length() == 2); |
| 3698 | 3707 |
| 3699 // Load the two objects into registers and perform the comparison. | 3708 // Load the two objects into registers and perform the comparison. |
| 3700 LoadAndSpill(args->at(0)); | 3709 LoadAndSpill(args->at(0)); |
| 3701 LoadAndSpill(args->at(1)); | 3710 LoadAndSpill(args->at(1)); |
| 3702 frame_->EmitPop(r0); | 3711 frame_->EmitPop(r0); |
| 3703 frame_->EmitPop(r1); | 3712 frame_->EmitPop(r1); |
| 3704 __ cmp(r0, Operand(r1)); | 3713 __ cmp(r0, Operand(r1)); |
| (...skipping 4002 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7707 | 7716 |
| 7708 // Just jump to runtime to add the two strings. | 7717 // Just jump to runtime to add the two strings. |
| 7709 __ bind(&string_add_runtime); | 7718 __ bind(&string_add_runtime); |
| 7710 __ TailCallRuntime(Runtime::kStringAdd, 2, 1); | 7719 __ TailCallRuntime(Runtime::kStringAdd, 2, 1); |
| 7711 } | 7720 } |
| 7712 | 7721 |
| 7713 | 7722 |
| 7714 #undef __ | 7723 #undef __ |
| 7715 | 7724 |
| 7716 } } // namespace v8::internal | 7725 } } // namespace v8::internal |
| OLD | NEW |