| OLD | NEW |
| 1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 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 626 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 637 __ add(sp, sp, Operand(kPointerSize)); | 637 __ add(sp, sp, Operand(kPointerSize)); |
| 638 | 638 |
| 639 // 6. Get the code for the function or the non-function builtin. | 639 // 6. Get the code for the function or the non-function builtin. |
| 640 // If number of expected arguments matches, then call. Otherwise restart | 640 // If number of expected arguments matches, then call. Otherwise restart |
| 641 // the arguments adaptor stub. | 641 // the arguments adaptor stub. |
| 642 // r0: actual number of arguments | 642 // r0: actual number of arguments |
| 643 // r1: function | 643 // r1: function |
| 644 { Label invoke; | 644 { Label invoke; |
| 645 __ tst(r1, r1); | 645 __ tst(r1, r1); |
| 646 __ b(ne, &invoke); | 646 __ b(ne, &invoke); |
| 647 __ stop("Generate_ArgumentsAdaptorTrampoline - non-function call"); | 647 //__ stop("Generate_ArgumentsAdaptorTrampoline - non-function call"); |
| 648 __ mov(r2, Operand(0)); // expected arguments is 0 for CALL_NON_FUNCTION | 648 __ mov(r2, Operand(0)); // expected arguments is 0 for CALL_NON_FUNCTION |
| 649 __ GetBuiltinEntry(r3, Builtins::CALL_NON_FUNCTION); | 649 __ GetBuiltinEntry(r3, Builtins::CALL_NON_FUNCTION); |
| 650 __ b(&enough); | 650 __ b(&enough); |
| 651 | 651 |
| 652 __ bind(&invoke); | 652 __ bind(&invoke); |
| 653 __ ldr(r3, FieldMemOperand(r1, JSFunction::kSharedFunctionInfoOffset)); | 653 __ ldr(r3, FieldMemOperand(r1, JSFunction::kSharedFunctionInfoOffset)); |
| 654 __ ldr(r2, | 654 __ ldr(r2, |
| 655 FieldMemOperand(r3, | 655 FieldMemOperand(r3, |
| 656 SharedFunctionInfo::kFormalParameterCountOffset)); | 656 SharedFunctionInfo::kFormalParameterCountOffset)); |
| 657 __ ldr(r3, | 657 __ ldr(r3, |
| (...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 826 } | 826 } |
| 827 | 827 |
| 828 void Builtins::Generate_StubNoRegisters_DebugBreak(MacroAssembler* masm) { | 828 void Builtins::Generate_StubNoRegisters_DebugBreak(MacroAssembler* masm) { |
| 829 // Generate nothing as CodeStub CallFunction is not used on ARM. | 829 // Generate nothing as CodeStub CallFunction is not used on ARM. |
| 830 } | 830 } |
| 831 | 831 |
| 832 | 832 |
| 833 #undef __ | 833 #undef __ |
| 834 | 834 |
| 835 } } // namespace v8::internal | 835 } } // namespace v8::internal |
| OLD | NEW |