OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #if V8_TARGET_ARCH_ARM64 | 7 #if V8_TARGET_ARCH_ARM64 |
8 | 8 |
9 #include "src/bootstrapper.h" | 9 #include "src/bootstrapper.h" |
10 #include "src/code-stubs.h" | 10 #include "src/code-stubs.h" |
(...skipping 2920 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2931 __ Ldr(x5, FieldMemOperand(x2, AllocationSite::kMapOffset)); | 2931 __ Ldr(x5, FieldMemOperand(x2, AllocationSite::kMapOffset)); |
2932 __ JumpIfRoot(x5, Heap::kAllocationSiteMapRootIndex, | 2932 __ JumpIfRoot(x5, Heap::kAllocationSiteMapRootIndex, |
2933 &feedback_register_initialized); | 2933 &feedback_register_initialized); |
2934 __ LoadRoot(x2, Heap::kUndefinedValueRootIndex); | 2934 __ LoadRoot(x2, Heap::kUndefinedValueRootIndex); |
2935 __ bind(&feedback_register_initialized); | 2935 __ bind(&feedback_register_initialized); |
2936 } | 2936 } |
2937 | 2937 |
2938 __ AssertUndefinedOrAllocationSite(x2, x5); | 2938 __ AssertUndefinedOrAllocationSite(x2, x5); |
2939 } | 2939 } |
2940 | 2940 |
| 2941 __ Mov(x3, function); |
| 2942 |
2941 // Jump to the function-specific construct stub. | 2943 // Jump to the function-specific construct stub. |
2942 Register jump_reg = x4; | 2944 Register jump_reg = x4; |
2943 Register shared_func_info = jump_reg; | 2945 Register shared_func_info = jump_reg; |
2944 Register cons_stub = jump_reg; | 2946 Register cons_stub = jump_reg; |
2945 Register cons_stub_code = jump_reg; | 2947 Register cons_stub_code = jump_reg; |
2946 __ Ldr(shared_func_info, | 2948 __ Ldr(shared_func_info, |
2947 FieldMemOperand(function, JSFunction::kSharedFunctionInfoOffset)); | 2949 FieldMemOperand(function, JSFunction::kSharedFunctionInfoOffset)); |
2948 __ Ldr(cons_stub, | 2950 __ Ldr(cons_stub, |
2949 FieldMemOperand(shared_func_info, | 2951 FieldMemOperand(shared_func_info, |
2950 SharedFunctionInfo::kConstructStubOffset)); | 2952 SharedFunctionInfo::kConstructStubOffset)); |
(...skipping 2269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5220 kStackUnwindSpace, NULL, spill_offset, | 5222 kStackUnwindSpace, NULL, spill_offset, |
5221 MemOperand(fp, 6 * kPointerSize), NULL); | 5223 MemOperand(fp, 6 * kPointerSize), NULL); |
5222 } | 5224 } |
5223 | 5225 |
5224 | 5226 |
5225 #undef __ | 5227 #undef __ |
5226 | 5228 |
5227 } } // namespace v8::internal | 5229 } } // namespace v8::internal |
5228 | 5230 |
5229 #endif // V8_TARGET_ARCH_ARM64 | 5231 #endif // V8_TARGET_ARCH_ARM64 |
OLD | NEW |