]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
[Ada] arm-qnx-7.1: undefined reference to fma* symbols
authorDoug Rupp <rupp@adacore.com>
Thu, 7 Apr 2022 18:08:56 +0000 (11:08 -0700)
committerPierre-Marie de Rodat <derodat@adacore.com>
Wed, 18 May 2022 08:41:07 +0000 (08:41 +0000)
Configure the arm-qnx runtime packages to avoid generating these
symbols.

gcc/ada/

* Makefile.rtl (arm-qnx): Use default (non-fma) target pair.

gcc/ada/Makefile.rtl

index 7acb159f7ec56460c9313b686b6717e6c106d89d..7b84ee5bd37d66a28660a9af2f7267182d72ac67 100644 (file)
@@ -1510,7 +1510,6 @@ ifeq ($(strip $(filter-out arm aarch64 %qnx,$(target_cpu) $(target_os))),)
   LIBGNAT_TARGET_PAIRS = \
   a-intnam.ads<libgnarl/a-intnam__qnx.ads \
   a-nallfl.ads<libgnat/a-nallfl__wraplf.ads \
-  s-dorepr.adb<libgnat/s-dorepr__fma.adb \
   s-inmaop.adb<libgnarl/s-inmaop__posix.adb \
   s-intman.adb<libgnarl/s-intman__qnx.adb \
   s-osinte.adb<libgnarl/s-osinte__qnx.adb \
@@ -1534,6 +1533,10 @@ ifeq ($(strip $(filter-out arm aarch64 %qnx,$(target_cpu) $(target_os))),)
   else
      EH_MECHANISM=-gcc
      SIGTRAMP_OBJ=sigtramp-qnx.o
+     # "fma*" instructions not available for ARM fpu=vfpv3
+     # but not an issue on AARCH64.
+     LIBGNAT_TARGET_PAIRS += \
+       s-dorepr.adb<libgnat/s-dorepr__fma.adb
      LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
      EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
      # Temporarily restrict shared library build to aarch64 (V303-025)