mirror of
https://github.com/gcc-mirror/gcc.git
synced 2026-05-06 14:59:39 +02:00
libgcc: Remove PREDRES and LS64 from AArch64 cpuinfo
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. [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.
This commit is contained in:
@@ -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,
|
||||
|
||||
@@ -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")
|
||||
|
||||
|
||||
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user