AT_HWCAP
case AT_HWCAP:
NEW_AUX_ENT(AT_HWCAP, ELF_HWCAP);
NEW_AUX_ENT(AT_HWCAP, ELF_HWCAP);
#define cpu_has_lsx (getauxval(AT_HWCAP) & HWCAP_LOONGARCH_LSX)
#define cpu_has_lasx (getauxval(AT_HWCAP) & HWCAP_LOONGARCH_LASX)
#define has_vector() (getauxval(AT_HWCAP) & COMPAT_HWCAP_ISA_V)
if (getauxval(AT_HWCAP) & HWCAP_SVE)
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
.at_hwcap = AT_HWCAP,
if (!(getauxval(AT_HWCAP) & HWCAP_SVE))
case AT_HWCAP:
return getauxval(AT_HWCAP) & HWCAP_SVE;
if (getauxval(AT_HWCAP) & HWCAP_SVE) {
if (!(getauxval(AT_HWCAP) & HWCAP_SVE))
.hwcap_type = AT_HWCAP,
if (!(getauxval(AT_HWCAP) & HWCAP_SVE) &&
.hwcap_type = AT_HWCAP,
if (!(getauxval(AT_HWCAP) & HWCAP_SVE)) {
if (!(getauxval(AT_HWCAP) & HWCAP_GCS))
if (!(getauxval(AT_HWCAP) & HWCAP_GCS))
if (getauxval(AT_HWCAP) & HWCAP_GCS) {
if (!(getauxval(AT_HWCAP) & HWCAP_GCS))
hwcaps = getauxval(AT_HWCAP);
unsigned long hwcaps = getauxval(AT_HWCAP); \
unsigned long hwcaps = getauxval(AT_HWCAP);
unsigned long hwcaps = getauxval(AT_HWCAP);
unsigned long hwcaps = getauxval(AT_HWCAP); \
if (getauxval(AT_HWCAP) & HWCAP_GCS)
if (getauxval(AT_HWCAP) & HWCAP_SSBS)
if (getauxval(AT_HWCAP) & HWCAP_SVE)
if (getauxval(AT_HWCAP) & HWCAP_GCS)
if (!(getauxval(AT_HWCAP) & HWCAP_SVE)) {
return ((unsigned long)get_auxv_entry(AT_HWCAP) & ftr) == ftr;
return getauxval(AT_HWCAP) & HWCAP_ASIMD;
return getauxval(AT_HWCAP) & HWCAP_S390_VXRS;