OLD | NEW |
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 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
49 supported_ = 0; | 49 supported_ = 0; |
50 | 50 |
51 // Only use statically determined features for cross compile (snapshot). | 51 // Only use statically determined features for cross compile (snapshot). |
52 if (cross_compile) return; | 52 if (cross_compile) return; |
53 | 53 |
54 // Probe for runtime features | 54 // Probe for runtime features |
55 base::CPU cpu; | 55 base::CPU cpu; |
56 if (cpu.implementer() == base::CPU::NVIDIA && | 56 if (cpu.implementer() == base::CPU::NVIDIA && |
57 cpu.variant() == base::CPU::NVIDIA_DENVER && | 57 cpu.variant() == base::CPU::NVIDIA_DENVER && |
58 cpu.part() <= base::CPU::NVIDIA_DENVER_V10) { | 58 cpu.part() <= base::CPU::NVIDIA_DENVER_V10) { |
59 supported_ |= 1u << COHERENT_CACHE; | 59 // TODO(jkummerow): This is turned off as an experiment to see if it |
| 60 // affects crash rates. Keep an eye on crash reports and either remove |
| 61 // coherent cache support permanently, or re-enable it! |
| 62 // supported_ |= 1u << COHERENT_CACHE; |
60 } | 63 } |
61 } | 64 } |
62 | 65 |
63 | 66 |
64 void CpuFeatures::PrintTarget() { } | 67 void CpuFeatures::PrintTarget() { } |
65 | 68 |
66 | 69 |
67 void CpuFeatures::PrintFeatures() { | 70 void CpuFeatures::PrintFeatures() { |
68 printf("COHERENT_CACHE=%d\n", CpuFeatures::IsSupported(COHERENT_CACHE)); | 71 printf("COHERENT_CACHE=%d\n", CpuFeatures::IsSupported(COHERENT_CACHE)); |
69 } | 72 } |
(...skipping 3068 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3138 movk(scratch, (target_offset >> 32) & 0xFFFF, 32); | 3141 movk(scratch, (target_offset >> 32) & 0xFFFF, 32); |
3139 DCHECK((target_offset >> 48) == 0); | 3142 DCHECK((target_offset >> 48) == 0); |
3140 add(rd, rd, scratch); | 3143 add(rd, rd, scratch); |
3141 } | 3144 } |
3142 | 3145 |
3143 | 3146 |
3144 } // namespace internal | 3147 } // namespace internal |
3145 } // namespace v8 | 3148 } // namespace v8 |
3146 | 3149 |
3147 #endif // V8_TARGET_ARCH_ARM64 | 3150 #endif // V8_TARGET_ARCH_ARM64 |
OLD | NEW |