about summary refs log tree commit diff
path: root/sysdeps/aarch64/Makefile
diff options
context:
space:
mode:
authorSzabolcs Nagy <szabolcs.nagy@arm.com>2020-10-26 15:48:01 +0000
committerSzabolcs Nagy <szabolcs.nagy@arm.com>2020-11-02 09:39:24 +0000
commite156dabc766d6f6f99ce9402999eae380a3ec1f2 (patch)
treee57a3b9d8c12c24d04ee4507571fa967683cff7a /sysdeps/aarch64/Makefile
parent558251bd8785760ad40fcbfeaaee5d27fa5b0fe4 (diff)
downloadglibc-e156dabc766d6f6f99ce9402999eae380a3ec1f2.tar.gz
glibc-e156dabc766d6f6f99ce9402999eae380a3ec1f2.tar.xz
glibc-e156dabc766d6f6f99ce9402999eae380a3ec1f2.zip
aarch64: Add variant PCS lazy binding test [BZ #26798]
This test fails without bug 26798 fixed because some integer registers
likely get clobbered by lazy binding and variant PCS only allows x16
and x17 to be clobbered at call time.

The test requires binutils 2.32.1 or newer for handling variant PCS
symbols. SVE registers are not covered by this test, to avoid the
complexity of handling multiple compile- and runtime feature support
cases.
Diffstat (limited to 'sysdeps/aarch64/Makefile')
-rw-r--r--sysdeps/aarch64/Makefile7
1 files changed, 7 insertions, 0 deletions
diff --git a/sysdeps/aarch64/Makefile b/sysdeps/aarch64/Makefile
index 7f82fc055e..d8e06d27b2 100644
--- a/sysdeps/aarch64/Makefile
+++ b/sysdeps/aarch64/Makefile
@@ -17,6 +17,13 @@ sysdep-dl-routines += tlsdesc dl-tlsdesc
 gen-as-const-headers += dl-link.sym
 
 tests-internal += tst-ifunc-arg-1 tst-ifunc-arg-2
+
+ifeq (yes,$(aarch64-variant-pcs))
+tests += tst-vpcs
+modules-names += tst-vpcs-mod
+LDFLAGS-tst-vpcs-mod.so = -Wl,-z,lazy
+$(objpfx)tst-vpcs: $(objpfx)tst-vpcs-mod.so
+endif
 endif
 
 ifeq ($(subdir),csu)