| OLD | NEW |
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 459 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 470 | 470 |
| 471 // v8::InvocationCallback's argument. | 471 // v8::InvocationCallback's argument. |
| 472 __ lea(eax, ApiParameterOperand(1)); | 472 __ lea(eax, ApiParameterOperand(1)); |
| 473 __ mov(ApiParameterOperand(0), eax); | 473 __ mov(ApiParameterOperand(0), eax); |
| 474 | 474 |
| 475 // Emitting a stub call may try to allocate (if the code is not | 475 // Emitting a stub call may try to allocate (if the code is not |
| 476 // already generated). Do not allow the assembler to perform a | 476 // already generated). Do not allow the assembler to perform a |
| 477 // garbage collection but instead return the allocation failure | 477 // garbage collection but instead return the allocation failure |
| 478 // object. | 478 // object. |
| 479 return masm->TryCallApiFunctionAndReturn(&fun, | 479 return masm->TryCallApiFunctionAndReturn(&fun, |
| 480 kApiArgc + kApiStackSpace, |
| 480 argc + kFastApiCallArguments + 1); | 481 argc + kFastApiCallArguments + 1); |
| 481 } | 482 } |
| 482 | 483 |
| 483 | 484 |
| 484 class CallInterceptorCompiler BASE_EMBEDDED { | 485 class CallInterceptorCompiler BASE_EMBEDDED { |
| 485 public: | 486 public: |
| 486 CallInterceptorCompiler(StubCompiler* stub_compiler, | 487 CallInterceptorCompiler(StubCompiler* stub_compiler, |
| 487 const ParameterCount& arguments, | 488 const ParameterCount& arguments, |
| 488 Register name, | 489 Register name, |
| 489 Code::ExtraICState extra_ic_state) | 490 Code::ExtraICState extra_ic_state) |
| (...skipping 594 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1084 | 1085 |
| 1085 __ PrepareCallApiFunction(kApiArgc, eax); | 1086 __ PrepareCallApiFunction(kApiArgc, eax); |
| 1086 __ mov(ApiParameterOperand(0), ebx); // name. | 1087 __ mov(ApiParameterOperand(0), ebx); // name. |
| 1087 __ add(Operand(ebx), Immediate(kPointerSize)); | 1088 __ add(Operand(ebx), Immediate(kPointerSize)); |
| 1088 __ mov(ApiParameterOperand(1), ebx); // arguments pointer. | 1089 __ mov(ApiParameterOperand(1), ebx); // arguments pointer. |
| 1089 | 1090 |
| 1090 // Emitting a stub call may try to allocate (if the code is not | 1091 // Emitting a stub call may try to allocate (if the code is not |
| 1091 // already generated). Do not allow the assembler to perform a | 1092 // already generated). Do not allow the assembler to perform a |
| 1092 // garbage collection but instead return the allocation failure | 1093 // garbage collection but instead return the allocation failure |
| 1093 // object. | 1094 // object. |
| 1094 return masm()->TryCallApiFunctionAndReturn(&fun, kStackSpace); | 1095 return masm()->TryCallApiFunctionAndReturn(&fun, |
| 1096 kApiArgc, |
| 1097 kStackSpace); |
| 1095 } | 1098 } |
| 1096 | 1099 |
| 1097 | 1100 |
| 1098 void StubCompiler::GenerateLoadConstant(JSObject* object, | 1101 void StubCompiler::GenerateLoadConstant(JSObject* object, |
| 1099 JSObject* holder, | 1102 JSObject* holder, |
| 1100 Register receiver, | 1103 Register receiver, |
| 1101 Register scratch1, | 1104 Register scratch1, |
| 1102 Register scratch2, | 1105 Register scratch2, |
| 1103 Register scratch3, | 1106 Register scratch3, |
| 1104 Object* value, | 1107 Object* value, |
| (...skipping 2669 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3774 masm->isolate()->builtins()->KeyedStoreIC_MissForceGeneric(); | 3777 masm->isolate()->builtins()->KeyedStoreIC_MissForceGeneric(); |
| 3775 __ jmp(ic_force_generic, RelocInfo::CODE_TARGET); | 3778 __ jmp(ic_force_generic, RelocInfo::CODE_TARGET); |
| 3776 } | 3779 } |
| 3777 | 3780 |
| 3778 | 3781 |
| 3779 #undef __ | 3782 #undef __ |
| 3780 | 3783 |
| 3781 } } // namespace v8::internal | 3784 } } // namespace v8::internal |
| 3782 | 3785 |
| 3783 #endif // V8_TARGET_ARCH_IA32 | 3786 #endif // V8_TARGET_ARCH_IA32 |
| OLD | NEW |