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 3582 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3593 Load(right); | 3593 Load(right); |
3594 Comparison(node, cc, strict, destination()); | 3594 Comparison(node, cc, strict, destination()); |
3595 } | 3595 } |
3596 | 3596 |
3597 | 3597 |
3598 void CodeGenerator::VisitThisFunction(ThisFunction* node) { | 3598 void CodeGenerator::VisitThisFunction(ThisFunction* node) { |
3599 frame_->PushFunction(); | 3599 frame_->PushFunction(); |
3600 } | 3600 } |
3601 | 3601 |
3602 | 3602 |
3603 void CodeGenerator::GenerateArgumentsAccess(ZoneList<Expression*>* args) { | 3603 void CodeGenerator::GenerateArguments(ZoneList<Expression*>* args) { |
3604 ASSERT(args->length() == 1); | 3604 ASSERT(args->length() == 1); |
3605 | 3605 |
3606 // ArgumentsAccessStub expects the key in rdx and the formal | 3606 // ArgumentsAccessStub expects the key in rdx and the formal |
3607 // parameter count in rax. | 3607 // parameter count in rax. |
3608 Load(args->at(0)); | 3608 Load(args->at(0)); |
3609 Result key = frame_->Pop(); | 3609 Result key = frame_->Pop(); |
3610 // Explicitly create a constant result. | 3610 // Explicitly create a constant result. |
3611 Result count(Handle<Smi>(Smi::FromInt(scope()->num_parameters()))); | 3611 Result count(Handle<Smi>(Smi::FromInt(scope()->num_parameters()))); |
3612 // Call the shared stub to get to arguments[key]. | 3612 // Call the shared stub to get to arguments[key]. |
3613 ArgumentsAccessStub stub(ArgumentsAccessStub::READ_ELEMENT); | 3613 ArgumentsAccessStub stub(ArgumentsAccessStub::READ_ELEMENT); |
(...skipping 6182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
9796 // Call the function from C++. | 9796 // Call the function from C++. |
9797 return FUNCTION_CAST<ModuloFunction>(buffer); | 9797 return FUNCTION_CAST<ModuloFunction>(buffer); |
9798 } | 9798 } |
9799 | 9799 |
9800 #endif | 9800 #endif |
9801 | 9801 |
9802 | 9802 |
9803 #undef __ | 9803 #undef __ |
9804 | 9804 |
9805 } } // namespace v8::internal | 9805 } } // namespace v8::internal |
OLD | NEW |