aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vect-loop.cc
diff options
context:
space:
mode:
authorWilco Dijkstra <wilco.dijkstra@arm.com>2024-06-05 14:04:33 +0100
committerWilco Dijkstra <wilco.dijkstra@arm.com>2024-06-05 14:10:50 +0100
commitd7cbcfe7c33645eaf95f175f19884d443817857b (patch)
tree271c52228a0d3bc074f42304ffa8cad8da356cf5 /gcc/tree-vect-loop.cc
parentacdc9df371fbe99e814a3f35a439531e08af79e7 (diff)
downloadgcc-d7cbcfe7c33645eaf95f175f19884d443817857b.zip
gcc-d7cbcfe7c33645eaf95f175f19884d443817857b.tar.gz
gcc-d7cbcfe7c33645eaf95f175f19884d443817857b.tar.bz2
AArch64: Fix cpu features initialization [PR115342]
The CPU features initialization code uses CPUID registers (rather than HWCAP). The equality comparisons it uses are incorrect: for example FEAT_SVE is not set if SVE2 is available. Using HWCAPs for these is both simpler and correct. The initialization must also be done atomically to avoid multiple threads causing corruption due to non-atomic RMW accesses to the global. libgcc: PR target/115342 * config/aarch64/cpuinfo.c (__init_cpu_features_constructor): Use HWCAP where possible. Use atomic write for initialization. Fix FEAT_PREDRES comparison. (__init_cpu_features_resolver): Use atomic load for correct initialization. (__init_cpu_features): Likewise.
Diffstat (limited to 'gcc/tree-vect-loop.cc')
0 files changed, 0 insertions, 0 deletions