aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/alpha
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2022-02-28 11:50:41 +0100
committerFlorian Weimer <fweimer@redhat.com>2022-02-28 11:50:41 +0100
commit73fc4e28b9464f0e13edc719a5372839970e7ddb (patch)
tree62b7c150b29bccc23cda28ac57f60d2d1a973481 /sysdeps/unix/sysv/linux/alpha
parent1fe00d3eb602a0754873b536dc92fb6226759ee4 (diff)
downloadglibc-73fc4e28b9464f0e13edc719a5372839970e7ddb.tar
glibc-73fc4e28b9464f0e13edc719a5372839970e7ddb.tar.gz
glibc-73fc4e28b9464f0e13edc719a5372839970e7ddb.tar.bz2
glibc-73fc4e28b9464f0e13edc719a5372839970e7ddb.zip
Linux: Consolidate auxiliary vector parsing (redo)
And optimize it slightly. This is commit 8c8510ab2790039e58995ef3a22309582413d3ff revised. In _dl_aux_init in elf/dl-support.c, use an explicit loop and -fno-tree-loop-distribute-patterns to avoid memset. Reviewed-by: Szabolcs Nagy <szabolcs.nagy@arm.com>
Diffstat (limited to 'sysdeps/unix/sysv/linux/alpha')
-rw-r--r--sysdeps/unix/sysv/linux/alpha/dl-auxv.h18
1 files changed, 5 insertions, 13 deletions
diff --git a/sysdeps/unix/sysv/linux/alpha/dl-auxv.h b/sysdeps/unix/sysv/linux/alpha/dl-auxv.h
index 81d90da095..fcec743239 100644
--- a/sysdeps/unix/sysv/linux/alpha/dl-auxv.h
+++ b/sysdeps/unix/sysv/linux/alpha/dl-auxv.h
@@ -20,16 +20,8 @@
extern long __libc_alpha_cache_shape[4];
-#define DL_PLATFORM_AUXV \
- case AT_L1I_CACHESHAPE: \
- __libc_alpha_cache_shape[0] = av->a_un.a_val; \
- break; \
- case AT_L1D_CACHESHAPE: \
- __libc_alpha_cache_shape[1] = av->a_un.a_val; \
- break; \
- case AT_L2_CACHESHAPE: \
- __libc_alpha_cache_shape[2] = av->a_un.a_val; \
- break; \
- case AT_L3_CACHESHAPE: \
- __libc_alpha_cache_shape[3] = av->a_un.a_val; \
- break;
+#define DL_PLATFORM_AUXV \
+ __libc_alpha_cache_shape[0] = auxv_values[AT_L1I_CACHESHAPE]; \
+ __libc_alpha_cache_shape[1] = auxv_values[AT_L1D_CACHESHAPE]; \
+ __libc_alpha_cache_shape[2] = auxv_values[AT_L2_CACHESHAPE]; \
+ __libc_alpha_cache_shape[3] = auxv_values[AT_L3_CACHESHAPE];