]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
ARM: handle v6 to v8 in configure.ac
authorPaul Floyd <pjfloyd@wanadoo.fr>
Sun, 28 Jan 2024 14:34:27 +0000 (15:34 +0100)
committerPaul Floyd <pjfloyd@wanadoo.fr>
Sun, 28 Jan 2024 14:34:27 +0000 (15:34 +0100)
Some changes based on first patch in
https://bugs.kde.org/show_bug.cgi?id=276897
Bug 276897 ARM v6 legacy patches
contributed by "JW"

I've also modified the GCC flags for a few tests in none/tests/arm

We probably need more arm feature tests in configure.ac.

Makefile.all.am
configure.ac
none/tests/arm/Makefile.am

index 94d65f2ccb4066b3197d37de727a2357022e89c7..7cb7e87256443c80e903ec2ba4b790f2ccf15a1c 100755 (executable)
@@ -232,13 +232,11 @@ AM_CFLAGS_X86_FREEBSD       = @FLAG_M32@ @PREFERRED_STACK_BOUNDARY_2@ \
 AM_CFLAGS_PSO_X86_FREEBSD       = @FLAG_M32@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
 AM_CCASFLAGS_X86_FREEBSD    = @FLAG_M32@ -g
 
-AM_FLAG_M3264_ARM_LINUX   = @FLAG_M32@
-AM_CFLAGS_ARM_LINUX       = @FLAG_M32@ \
-                               $(AM_CFLAGS_BASE) -marm -mcpu=cortex-a8
+AM_FLAG_M3264_ARM_LINUX   = @FLAG_M32@ @VGCONF_PLATFORM_ARM_ARCH@
+AM_CFLAGS_ARM_LINUX       = @FLAG_M32@ $(AM_CFLAGS_BASE) @VGCONF_PLATFORM_ARM_ARCH@
 AM_CFLAGS_PSO_ARM_LINUX   = @FLAG_M32@ $(AM_CFLAGS_BASE) \
-                               -marm -mcpu=cortex-a8 $(AM_CFLAGS_PSO_BASE)
-AM_CCASFLAGS_ARM_LINUX    = @FLAG_M32@ \
-                               -marm -mcpu=cortex-a8 -g
+                               $(AM_CFLAGS_PSO_BASE) @VGCONF_PLATFORM_ARM_ARCH@
+AM_CCASFLAGS_ARM_LINUX    = @FLAG_M32@ @VGCONF_PLATFORM_ARM_ARCH@
 
 AM_FLAG_M3264_ARM64_LINUX = @FLAG_M64@
 AM_CFLAGS_ARM64_LINUX     = @FLAG_M64@ $(AM_CFLAGS_BASE)
index 2acb7023e29c7da34cc063210a99fde88a2dc14b..7925c9a3e9dc049f08d69fb8515cde1c33d743ed 100755 (executable)
@@ -237,6 +237,8 @@ AC_MSG_CHECKING([for a supported CPU])
 # Endian.  Similarly, ppc64le or PPC64LE refer to only 64-bit systems that are
 # Little Endian.
 
+VGCONF_PLATFORM_ARM_ARCH=
+
 case "${host_cpu}" in
      i?86) 
        AC_MSG_RESULT([ok (${host_cpu})])
@@ -271,8 +273,21 @@ case "${host_cpu}" in
         ARCH_MAX="s390x"
         ;;
 
+     armv8*)
+       AC_MSG_RESULT([ok (${host_cpu})])
+       VGCONF_PLATFORM_ARM_ARCH="-marm -mcpu=cortex-a8"
+       ARCH_MAX="arm"
+       ;;
+
+     armv7*)
+       AC_MSG_RESULT([ok (${host_cpu})])
+       VGCONF_PLATFORM_ARM_ARCH="-march=armv7 -mcpu=cortex-a8"
+       ARCH_MAX="arm"
+       ;;
+
      arm*)
        AC_MSG_RESULT([ok (${host_cpu})])
+       VGCONF_PLATFORM_ARM_ARCH="-march=armv6"
        ARCH_MAX="arm"
        ;;
 
@@ -316,6 +331,8 @@ case "${host_cpu}" in
        ;;
 esac
 
+AC_SUBST(VGCONF_PLATFORM_ARM_ARCH)
+
 #----------------------------------------------------------------------------
 
 # Sometimes it's convenient to subvert the bi-arch build system and
index 4776ea7cea90343a2d721dfd198a89e091b29425..79b957c57313f125d395eebd6f9c2b06f0288710 100644 (file)
@@ -61,17 +61,19 @@ v6intThumb_CFLAGS = $(AM_CFLAGS) -g -O0 -mcpu=cortex-a8 -mthumb
 
 v6media_CFLAGS    = $(AM_CFLAGS) -g -O0 -mcpu=cortex-a8 -mthumb
 
-v8crypto_a_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -marm
-v8crypto_t_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -mthumb
+v8crypto_a_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -marm -march=armv8-a
+v8crypto_t_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -mthumb -march=armv8-a
 
-v8fpsimd_a_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -marm
-v8fpsimd_t_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -mthumb
+v8fpsimd_a_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -marm -march=armv8-a
+v8fpsimd_t_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -mthumb -march=armv8-a
 
 v8memory_a_CFLAGS = $(AM_CFLAGS) -g -O0 \
                        -march=armv8-a -mfpu=crypto-neon-fp-armv8 -marm
 v8memory_t_CFLAGS = $(AM_CFLAGS) -g -O0 \
                        -march=armv8-a -mfpu=crypto-neon-fp-armv8 -mthumb
 
+vcvt_fixed_float_VFP_CFLAGS = $(AM_CFLAGS) -g -O0 -mcpu=cortex-a8 -mfpu=neon
+
 vfp_CFLAGS        = $(AM_CFLAGS) -g -O0 -mcpu=cortex-a8 \
                        -mfpu=neon \
                        -mthumb