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/arm64/frames-arm64.h" | 5 #include "src/arm64/frames-arm64.h" |
6 #include "src/codegen.h" | 6 #include "src/codegen.h" |
7 #include "src/deoptimizer.h" | 7 #include "src/deoptimizer.h" |
8 #include "src/full-codegen/full-codegen.h" | 8 #include "src/full-codegen/full-codegen.h" |
9 #include "src/register-configuration.h" | 9 #include "src/register-configuration.h" |
10 #include "src/safepoint-table.h" | 10 #include "src/safepoint-table.h" |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 DCHECK((prev_call_address == NULL) || | 58 DCHECK((prev_call_address == NULL) || |
59 (call_address >= prev_call_address + patch_size())); | 59 (call_address >= prev_call_address + patch_size())); |
60 DCHECK(call_address + patch_size() <= code->instruction_end()); | 60 DCHECK(call_address + patch_size() <= code->instruction_end()); |
61 #ifdef DEBUG | 61 #ifdef DEBUG |
62 prev_call_address = call_address; | 62 prev_call_address = call_address; |
63 #endif | 63 #endif |
64 } | 64 } |
65 } | 65 } |
66 | 66 |
67 | 67 |
68 bool Deoptimizer::HasAlignmentPadding(SharedFunctionInfo* shared) { | |
69 // There is no dynamic alignment padding on ARM64 in the input frame. | |
70 return false; | |
71 } | |
72 | |
73 | |
74 void Deoptimizer::SetPlatformCompiledStubRegisters( | 68 void Deoptimizer::SetPlatformCompiledStubRegisters( |
75 FrameDescription* output_frame, CodeStubDescriptor* descriptor) { | 69 FrameDescription* output_frame, CodeStubDescriptor* descriptor) { |
76 ApiFunction function(descriptor->deoptimization_handler()); | 70 ApiFunction function(descriptor->deoptimization_handler()); |
77 ExternalReference xref(&function, ExternalReference::BUILTIN_CALL, isolate_); | 71 ExternalReference xref(&function, ExternalReference::BUILTIN_CALL, isolate_); |
78 intptr_t handler = reinterpret_cast<intptr_t>(xref.address()); | 72 intptr_t handler = reinterpret_cast<intptr_t>(xref.address()); |
79 int params = descriptor->GetHandlerParameterCount(); | 73 int params = descriptor->GetHandlerParameterCount(); |
80 output_frame->SetRegister(x0.code(), params); | 74 output_frame->SetRegister(x0.code(), params); |
81 output_frame->SetRegister(x1.code(), handler); | 75 output_frame->SetRegister(x1.code(), handler); |
82 } | 76 } |
83 | 77 |
(...skipping 252 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
336 void FrameDescription::SetCallerConstantPool(unsigned offset, intptr_t value) { | 330 void FrameDescription::SetCallerConstantPool(unsigned offset, intptr_t value) { |
337 // No embedded constant pool support. | 331 // No embedded constant pool support. |
338 UNREACHABLE(); | 332 UNREACHABLE(); |
339 } | 333 } |
340 | 334 |
341 | 335 |
342 #undef __ | 336 #undef __ |
343 | 337 |
344 } // namespace internal | 338 } // namespace internal |
345 } // namespace v8 | 339 } // namespace v8 |
OLD | NEW |