OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 #ifndef V8_MACRO_ASSEMBLER_H_ | 5 #ifndef V8_MACRO_ASSEMBLER_H_ |
6 #define V8_MACRO_ASSEMBLER_H_ | 6 #define V8_MACRO_ASSEMBLER_H_ |
7 | 7 |
8 #include "src/assembler-inl.h" | 8 #include "src/assembler-inl.h" |
9 | 9 |
10 // Helper types to make boolean flag easier to read at call-site. | 10 // Helper types to make boolean flag easier to read at call-site. |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 #include "src/s390/macro-assembler-s390.h" | 58 #include "src/s390/macro-assembler-s390.h" |
59 #elif V8_TARGET_ARCH_X87 | 59 #elif V8_TARGET_ARCH_X87 |
60 #include "src/x87/macro-assembler-x87.h" | 60 #include "src/x87/macro-assembler-x87.h" |
61 #else | 61 #else |
62 #error Unsupported target architecture. | 62 #error Unsupported target architecture. |
63 #endif | 63 #endif |
64 | 64 |
65 namespace v8 { | 65 namespace v8 { |
66 namespace internal { | 66 namespace internal { |
67 | 67 |
| 68 // Simulators only support C calls with up to kMaxCParameters parameters. |
| 69 static constexpr int kMaxCParameters = 9; |
| 70 |
68 class FrameScope { | 71 class FrameScope { |
69 public: | 72 public: |
70 explicit FrameScope(MacroAssembler* masm, StackFrame::Type type) | 73 explicit FrameScope(MacroAssembler* masm, StackFrame::Type type) |
71 : masm_(masm), type_(type), old_has_frame_(masm->has_frame()) { | 74 : masm_(masm), type_(type), old_has_frame_(masm->has_frame()) { |
72 masm->set_has_frame(true); | 75 masm->set_has_frame(true); |
73 if (type != StackFrame::MANUAL && type_ != StackFrame::NONE) { | 76 if (type != StackFrame::MANUAL && type_ != StackFrame::NONE) { |
74 masm->EnterFrame(type); | 77 masm->EnterFrame(type); |
75 } | 78 } |
76 } | 79 } |
77 | 80 |
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
261 } | 264 } |
262 return ExternalReference::new_space_allocation_limit_address(isolate); | 265 return ExternalReference::new_space_allocation_limit_address(isolate); |
263 } | 266 } |
264 }; | 267 }; |
265 | 268 |
266 | 269 |
267 } // namespace internal | 270 } // namespace internal |
268 } // namespace v8 | 271 } // namespace v8 |
269 | 272 |
270 #endif // V8_MACRO_ASSEMBLER_H_ | 273 #endif // V8_MACRO_ASSEMBLER_H_ |
OLD | NEW |