Added NEON to the list of features required for the aarch64 family
Both floating-point and NEON are required in all standard ARMv8 implementations. Theoretically though specialized markets can support no NEON or floating-point at all. Source: https://developer.arm.com/docs/den0024/latest/aarch64-floating-point-and-neon On the other hand the base procedure call standard for Aarch64 "assumes the availability of the vector registers for passing floating-point and SIMD arguments". Further "the Arm 64-bit architecture defines two mandatory register banks: a general-purpose register bank which can be used for scalar integer processing and pointer arithmetic; and a SIMD and Floating-Point register bank". Source: https://developer.arm.com/docs/ihi0055/latest/procedure-call-standard-for-the-arm-64-bit-architecture This makes customization of Aarch64 with no NEON instruction set available so unlikely that we can consider them a feature of the generic family.
This commit is contained in:
parent
77444dff10
commit
b07460ab5f
@ -904,6 +904,12 @@
|
||||
"any_of": [
|
||||
"sse4_2"
|
||||
]
|
||||
},
|
||||
"neon": {
|
||||
"reason": "NEON is required in all standard ARMv8 implementations",
|
||||
"families": [
|
||||
"aarch64"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -156,6 +156,7 @@ def test_architecture_family(target_name, expected_family):
|
||||
('skylake', 'sse3'),
|
||||
('power8', 'altivec'),
|
||||
('broadwell', 'sse4.1'),
|
||||
('aarch64', 'neon')
|
||||
])
|
||||
def test_features_query(target_name, feature):
|
||||
target = llnl.util.cpu.targets[target_name]
|
||||
|
Loading…
Reference in New Issue
Block a user