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 #if V8_TARGET_ARCH_ARM64 | 5 #if V8_TARGET_ARCH_ARM64 |
6 | 6 |
7 #include "src/base/bits.h" | 7 #include "src/base/bits.h" |
8 #include "src/base/division-by-constant.h" | 8 #include "src/base/division-by-constant.h" |
9 #include "src/bootstrapper.h" | 9 #include "src/bootstrapper.h" |
10 #include "src/codegen.h" | 10 #include "src/codegen.h" |
11 #include "src/debug/debug.h" | 11 #include "src/debug/debug.h" |
12 #include "src/register-configuration.h" | 12 #include "src/register-configuration.h" |
13 #include "src/runtime/runtime.h" | 13 #include "src/runtime/runtime.h" |
14 | 14 |
15 #include "src/arm64/frames-arm64.h" | 15 #include "src/arm64/frames-arm64.h" |
16 #include "src/arm64/macro-assembler-arm64.h" | 16 #include "src/arm64/macro-assembler-arm64.h" |
17 | 17 |
18 namespace v8 { | 18 namespace v8 { |
19 namespace internal { | 19 namespace internal { |
20 | 20 |
21 // Define a fake double underscore to use with the ASM_UNIMPLEMENTED macros. | 21 // Define a fake double underscore to use with the ASM_UNIMPLEMENTED macros. |
22 #define __ | 22 #define __ |
23 | 23 |
24 | 24 |
25 MacroAssembler::MacroAssembler(Isolate* arg_isolate, | 25 MacroAssembler::MacroAssembler(Isolate* arg_isolate, byte* buffer, |
26 byte * buffer, | 26 unsigned buffer_size, |
27 unsigned buffer_size) | 27 CodeObjectRequired create_code_object) |
28 : Assembler(arg_isolate, buffer, buffer_size), | 28 : Assembler(arg_isolate, buffer, buffer_size), |
29 generating_stub_(false), | 29 generating_stub_(false), |
30 #if DEBUG | 30 #if DEBUG |
31 allow_macro_instructions_(true), | 31 allow_macro_instructions_(true), |
32 #endif | 32 #endif |
33 has_frame_(false), | 33 has_frame_(false), |
34 use_real_aborts_(true), | 34 use_real_aborts_(true), |
35 sp_(jssp), | 35 sp_(jssp), |
36 tmp_list_(DefaultTmpList()), | 36 tmp_list_(DefaultTmpList()), |
37 fptmp_list_(DefaultFPTmpList()) { | 37 fptmp_list_(DefaultFPTmpList()) { |
38 if (isolate() != NULL) { | 38 if (create_code_object == CodeObjectRequired::kYes) { |
39 code_object_ = | 39 code_object_ = |
40 Handle<Object>::New(isolate()->heap()->undefined_value(), isolate()); | 40 Handle<Object>::New(isolate()->heap()->undefined_value(), isolate()); |
41 } | 41 } |
42 } | 42 } |
43 | 43 |
44 | 44 |
45 CPURegList MacroAssembler::DefaultTmpList() { | 45 CPURegList MacroAssembler::DefaultTmpList() { |
46 return CPURegList(ip0, ip1); | 46 return CPURegList(ip0, ip1); |
47 } | 47 } |
48 | 48 |
(...skipping 5025 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5074 } | 5074 } |
5075 | 5075 |
5076 | 5076 |
5077 #undef __ | 5077 #undef __ |
5078 | 5078 |
5079 | 5079 |
5080 } // namespace internal | 5080 } // namespace internal |
5081 } // namespace v8 | 5081 } // namespace v8 |
5082 | 5082 |
5083 #endif // V8_TARGET_ARCH_ARM64 | 5083 #endif // V8_TARGET_ARCH_ARM64 |
OLD | NEW |