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/codegen.h" | 9 #include "src/codegen.h" |
10 #include "src/debug.h" | 10 #include "src/debug.h" |
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
164 // Store each non-object register as two SMIs. | 164 // Store each non-object register as two SMIs. |
165 Register reg = Register(non_object_list.PopLowestIndex()); | 165 Register reg = Register(non_object_list.PopLowestIndex()); |
166 __ Lsr(scratch, reg, 32); | 166 __ Lsr(scratch, reg, 32); |
167 __ SmiTagAndPush(scratch, reg); | 167 __ SmiTagAndPush(scratch, reg); |
168 | 168 |
169 // Stack: | 169 // Stack: |
170 // jssp[12]: reg[63:32] | 170 // jssp[12]: reg[63:32] |
171 // jssp[8]: 0x00000000 (SMI tag & padding) | 171 // jssp[8]: 0x00000000 (SMI tag & padding) |
172 // jssp[4]: reg[31:0] | 172 // jssp[4]: reg[31:0] |
173 // jssp[0]: 0x00000000 (SMI tag & padding) | 173 // jssp[0]: 0x00000000 (SMI tag & padding) |
174 STATIC_ASSERT((kSmiTag == 0) && (kSmiShift == kWRegSizeInBits)); | 174 STATIC_ASSERT((kSmiTag == 0) && (kSmiShift == 32)); |
175 } | 175 } |
176 | 176 |
177 if (object_regs != 0) { | 177 if (object_regs != 0) { |
178 __ PushXRegList(object_regs); | 178 __ PushXRegList(object_regs); |
179 } | 179 } |
180 | 180 |
181 #ifdef DEBUG | 181 #ifdef DEBUG |
182 __ RecordComment("// Calling from debug break to runtime - come in - over"); | 182 __ RecordComment("// Calling from debug break to runtime - come in - over"); |
183 #endif | 183 #endif |
184 __ Mov(x0, 0); // No arguments. | 184 __ Mov(x0, 0); // No arguments. |
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
372 // Re-run JSFunction, x1 is function, cp is context. | 372 // Re-run JSFunction, x1 is function, cp is context. |
373 __ Br(scratch); | 373 __ Br(scratch); |
374 } | 374 } |
375 | 375 |
376 | 376 |
377 const bool LiveEdit::kFrameDropperSupported = true; | 377 const bool LiveEdit::kFrameDropperSupported = true; |
378 | 378 |
379 } } // namespace v8::internal | 379 } } // namespace v8::internal |
380 | 380 |
381 #endif // V8_TARGET_ARCH_ARM64 | 381 #endif // V8_TARGET_ARCH_ARM64 |
OLD | NEW |