diff options
Diffstat (limited to 'test/aarch64')
-rw-r--r-- | test/aarch64/test-assembler-aarch64.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/test/aarch64/test-assembler-aarch64.h b/test/aarch64/test-assembler-aarch64.h index 0bc81cb3..b45c7ae8 100644 --- a/test/aarch64/test-assembler-aarch64.h +++ b/test/aarch64/test-assembler-aarch64.h @@ -287,9 +287,10 @@ inline bool CanRun(const CPUFeatures& required, bool* queried_can_run) { #define TEARDOWN_CUSTOM() inline bool CanRun(const CPUFeatures& required, bool* queried_can_run) { - // InferFromOS can fail, but we can assume that basic features are present. - CPUFeatures cpu = - CPUFeatures::AArch64LegacyBaseline().With(CPUFeatures::InferFromOS()); + CPUFeatures cpu = CPUFeatures::InferFromOS(); + // If InferFromOS fails, assume that basic features are present. + if (cpu.HasNoFeatures()) cpu = CPUFeatures::AArch64LegacyBaseline(); + VIXL_ASSERT(cpu.Has(kInfrastructureCPUFeatures)); if (cpu.Has(required)) { |