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" |
(...skipping 1337 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1348 Abort(kTheCurrentStackPointerIsBelowCsp); | 1348 Abort(kTheCurrentStackPointerIsBelowCsp); |
1349 } | 1349 } |
1350 | 1350 |
1351 bind(&ok); | 1351 bind(&ok); |
1352 // Restore StackPointer(). | 1352 // Restore StackPointer(). |
1353 sub(StackPointer(), csp, StackPointer()); | 1353 sub(StackPointer(), csp, StackPointer()); |
1354 } | 1354 } |
1355 } | 1355 } |
1356 } | 1356 } |
1357 | 1357 |
| 1358 void MacroAssembler::AssertCspAligned() { |
| 1359 if (emit_debug_code() && use_real_aborts()) { |
| 1360 // TODO(titzer): use a real assert for alignment check? |
| 1361 UseScratchRegisterScope scope(this); |
| 1362 Register temp = scope.AcquireX(); |
| 1363 ldr(temp, MemOperand(csp)); |
| 1364 } |
| 1365 } |
1358 | 1366 |
1359 void MacroAssembler::AssertFPCRState(Register fpcr) { | 1367 void MacroAssembler::AssertFPCRState(Register fpcr) { |
1360 if (emit_debug_code()) { | 1368 if (emit_debug_code()) { |
1361 Label unexpected_mode, done; | 1369 Label unexpected_mode, done; |
1362 UseScratchRegisterScope temps(this); | 1370 UseScratchRegisterScope temps(this); |
1363 if (fpcr.IsNone()) { | 1371 if (fpcr.IsNone()) { |
1364 fpcr = temps.AcquireX(); | 1372 fpcr = temps.AcquireX(); |
1365 Mrs(fpcr, FPCR); | 1373 Mrs(fpcr, FPCR); |
1366 } | 1374 } |
1367 | 1375 |
(...skipping 3703 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5071 } | 5079 } |
5072 | 5080 |
5073 | 5081 |
5074 #undef __ | 5082 #undef __ |
5075 | 5083 |
5076 | 5084 |
5077 } // namespace internal | 5085 } // namespace internal |
5078 } // namespace v8 | 5086 } // namespace v8 |
5079 | 5087 |
5080 #endif // V8_TARGET_ARCH_ARM64 | 5088 #endif // V8_TARGET_ARCH_ARM64 |
OLD | NEW |