aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
authorAurelien Jarno <aurelien@aurel32.net>2016-08-05 22:35:01 +0200
committerAurelien Jarno <aurelien@aurel32.net>2016-08-05 22:35:01 +0200
commit9c8addbc1cd414711310c5a47693f5b0f0b9be3a (patch)
treed3d5472469ed40365cc6f9c8ceb99d82043af6a8 /sysdeps
parentd4cf1331007743c21e4f03603add48a107a6857d (diff)
downloadglibc-9c8addbc1cd414711310c5a47693f5b0f0b9be3a.zip
glibc-9c8addbc1cd414711310c5a47693f5b0f0b9be3a.tar.gz
glibc-9c8addbc1cd414711310c5a47693f5b0f0b9be3a.tar.bz2
sparc: build with -mvis on sparc32/sparcv9 and sparc64
When building for sparc32/sparcv9 or sparc64, we assume that VIS instructions are available and use them in the sparc specific assembly code. However we do not tell GCC to use such instructions, resulting in slightly suboptimal code. Fix that by passing -Wa,-Av9a -mvis to GCC. Changelog: * sysdeps/sparc/sparc32/sparcv9/Makefile (sysdep-CFLAGS): Add -mvis. * sysdeps/sparc/sparc64/Makefile (sysdep-CFLAGS): New. Define to -Wa,-Av9a -mvis.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/Makefile2
-rw-r--r--sysdeps/sparc/sparc64/Makefile2
2 files changed, 3 insertions, 1 deletions
diff --git a/sysdeps/sparc/sparc32/sparcv9/Makefile b/sysdeps/sparc/sparc32/sparcv9/Makefile
index fefc742..08c5a96 100644
--- a/sysdeps/sparc/sparc32/sparcv9/Makefile
+++ b/sysdeps/sparc/sparc32/sparcv9/Makefile
@@ -1,4 +1,4 @@
-sysdep-CFLAGS += -mcpu=ultrasparc -Wa,-Av9a
+sysdep-CFLAGS += -mcpu=ultrasparc -Wa,-Av9a -mvis
ifeq ($(have-as-vis3),yes)
ASFLAGS-.o += -Wa,-Av9d
diff --git a/sysdeps/sparc/sparc64/Makefile b/sysdeps/sparc/sparc64/Makefile
index 3a12510..fbabf69 100644
--- a/sysdeps/sparc/sparc64/Makefile
+++ b/sysdeps/sparc/sparc64/Makefile
@@ -1,3 +1,5 @@
+sysdep-CFLAGS += -Wa,-Av9a -mvis
+
ifeq ($(subdir),string)
sysdep_routines += align-cpy
endif