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

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

Issue 710613002: Arm64: Remove forced csp alignment to 16 byte values for Nvidia chips. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Add back SyncSystemStackPointer Created 6 years, 1 month 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | src/arm64/code-stubs-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 // 2 //
3 // Redistribution and use in source and binary forms, with or without 3 // Redistribution and use in source and binary forms, with or without
4 // modification, are permitted provided that the following conditions are 4 // modification, are permitted provided that the following conditions are
5 // met: 5 // met:
6 // 6 //
7 // * Redistributions of source code must retain the above copyright 7 // * Redistributions of source code must retain the above copyright
8 // notice, this list of conditions and the following disclaimer. 8 // notice, this list of conditions and the following disclaimer.
9 // * Redistributions in binary form must reproduce the above 9 // * Redistributions in binary form must reproduce the above
10 // copyright notice, this list of conditions and the following 10 // copyright notice, this list of conditions and the following
(...skipping 26 matching lines...) Expand all
37 #include "src/base/cpu.h" 37 #include "src/base/cpu.h"
38 38
39 namespace v8 { 39 namespace v8 {
40 namespace internal { 40 namespace internal {
41 41
42 42
43 // ----------------------------------------------------------------------------- 43 // -----------------------------------------------------------------------------
44 // CpuFeatures implementation. 44 // CpuFeatures implementation.
45 45
46 void CpuFeatures::ProbeImpl(bool cross_compile) { 46 void CpuFeatures::ProbeImpl(bool cross_compile) {
47 if (cross_compile) { 47 // AArch64 has no configuration options, no further probing is required.
48 // Always align csp in cross compiled code - this is safe and ensures that 48 supported_ = 0;
49 // csp will always be aligned if it is enabled by probing at runtime.
50 if (FLAG_enable_always_align_csp) supported_ |= 1u << ALWAYS_ALIGN_CSP;
51 } else {
52 base::CPU cpu;
53 if (FLAG_enable_always_align_csp &&
54 (cpu.implementer() == base::CPU::NVIDIA || FLAG_debug_code)) {
55 supported_ |= 1u << ALWAYS_ALIGN_CSP;
56 }
57 }
58 } 49 }
59 50
60 51
61 void CpuFeatures::PrintTarget() { } 52 void CpuFeatures::PrintTarget() { }
62 void CpuFeatures::PrintFeatures() { } 53 void CpuFeatures::PrintFeatures() { }
63 54
64 55
65 // ----------------------------------------------------------------------------- 56 // -----------------------------------------------------------------------------
66 // CPURegList utilities. 57 // CPURegList utilities.
67 58
(...skipping 3070 matching lines...) Expand 10 before | Expand all | Expand 10 after
3138 movz(scratch, (target_offset >> 16) & 0xFFFF, 16); 3129 movz(scratch, (target_offset >> 16) & 0xFFFF, 16);
3139 movk(scratch, (target_offset >> 32) & 0xFFFF, 32); 3130 movk(scratch, (target_offset >> 32) & 0xFFFF, 32);
3140 DCHECK((target_offset >> 48) == 0); 3131 DCHECK((target_offset >> 48) == 0);
3141 add(rd, rd, scratch); 3132 add(rd, rd, scratch);
3142 } 3133 }
3143 3134
3144 3135
3145 } } // namespace v8::internal 3136 } } // namespace v8::internal
3146 3137
3147 #endif // V8_TARGET_ARCH_ARM64 3138 #endif // V8_TARGET_ARCH_ARM64
OLDNEW
« no previous file with comments | « no previous file | src/arm64/code-stubs-arm64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698