Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1451)

Side by Side Diff: src/arm64/macro-assembler-arm64.cc

Issue 1811283003: [wasm] WIP fix arm64 frame alignment. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/arm64/macro-assembler-arm64.h ('k') | src/compiler/arm64/code-generator-arm64.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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
OLDNEW
« no previous file with comments | « src/arm64/macro-assembler-arm64.h ('k') | src/compiler/arm64/code-generator-arm64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698