Wilco Dijkstra <wilco.dijks...@arm.com> writes: > Change AArch64 cpuinfo to follow the latest updates to the FMV spec [1]: > Remove FEAT_PREDRES and FEAT_LS64*. Preserve the ordering in enum > CPUFeatures. > > Passes regress, OK for commit? > > [1] https://github.com/ARM-software/acle/pull/382 > > gcc: > * common/config/aarch64/cpuinfo.h: Remove FEAT_PREDRES and FEAT_LS64*. > * config/aarch64/aarch64-option-extensions.def: Remove FMV support > for PREDRES. > > libgcc: > * config/aarch64/cpuinfo.c (__init_cpu_features_constructor): > Remove FEAT_PREDRES and FEAT_LS64* support.
OK, thanks, and sorry for the slow reply. Richard > --- > > diff --git a/gcc/common/config/aarch64/cpuinfo.h > b/gcc/common/config/aarch64/cpuinfo.h > index > aff43908e01a685bebe56351d61cb966c3cc9736..cd3c2b20c5315b035870528fa39246bbc780f369 > 100644 > --- a/gcc/common/config/aarch64/cpuinfo.h > +++ b/gcc/common/config/aarch64/cpuinfo.h > @@ -75,13 +75,13 @@ enum CPUFeatures { > FEAT_MEMTAG2, > FEAT_MEMTAG3, > FEAT_SB, > - FEAT_PREDRES, > + FEAT_unused1, > FEAT_SSBS, > FEAT_SSBS2, > FEAT_BTI, > - FEAT_LS64, > - FEAT_LS64_V, > - FEAT_LS64_ACCDATA, > + FEAT_unused2, > + FEAT_unused3, > + FEAT_unused4, > FEAT_WFXT, > FEAT_SME_F64, > FEAT_SME_I64, > diff --git a/gcc/config/aarch64/aarch64-option-extensions.def > b/gcc/config/aarch64/aarch64-option-extensions.def > index > aa8d315c240fbd25b49008b131cc09f04001eb80..79b79358c5d4a9e23c7601f7a1ba742dddadb778 > 100644 > --- a/gcc/config/aarch64/aarch64-option-extensions.def > +++ b/gcc/config/aarch64/aarch64-option-extensions.def > @@ -213,7 +213,7 @@ AARCH64_OPT_EXTENSION("memtag", MEMTAG, (), (), (), "") > > AARCH64_OPT_FMV_EXTENSION("sb", SB, (), (), (), "sb") > > -AARCH64_OPT_FMV_EXTENSION("predres", PREDRES, (), (), (), "") > +AARCH64_OPT_EXTENSION("predres", PREDRES, (), (), (), "") > > AARCH64_OPT_EXTENSION("ssbs", SSBS, (), (), (), "ssbs") > > diff --git a/libgcc/config/aarch64/cpuinfo.c b/libgcc/config/aarch64/cpuinfo.c > index > 6b4952ee542e3fdb58f007200aa8690261b1c543..dda9dc696893cd392dd1e15d03672053cc481c6f > 100644 > --- a/libgcc/config/aarch64/cpuinfo.c > +++ b/libgcc/config/aarch64/cpuinfo.c > @@ -339,25 +339,6 @@ __init_cpu_features_constructor (unsigned long hwcap, > setCPUFeature(FEAT_SME_I64); > if (hwcap2 & HWCAP2_SME_F64F64) > setCPUFeature(FEAT_SME_F64); > - if (hwcap & HWCAP_CPUID) > - { > - unsigned long ftr; > - > - getCPUFeature(ID_AA64ISAR1_EL1, ftr); > - /* ID_AA64ISAR1_EL1.SPECRES >= 0b0001 */ > - if (extractBits(ftr, 40, 4) >= 0x1) > - setCPUFeature(FEAT_PREDRES); > - /* ID_AA64ISAR1_EL1.LS64 >= 0b0001 */ > - if (extractBits(ftr, 60, 4) >= 0x1) > - setCPUFeature(FEAT_LS64); > - /* ID_AA64ISAR1_EL1.LS64 >= 0b0010 */ > - if (extractBits(ftr, 60, 4) >= 0x2) > - setCPUFeature(FEAT_LS64_V); > - /* ID_AA64ISAR1_EL1.LS64 >= 0b0011 */ > - if (extractBits(ftr, 60, 4) >= 0x3) > - setCPUFeature(FEAT_LS64_ACCDATA); > - } > - > if (hwcap & HWCAP_FP) > { > setCPUFeature(FEAT_FP);