From 6ccf0ccd6fb72c70942740fe47f342f361299a8e Mon Sep 17 00:00:00 2001 From: Jerome Guitton Date: Wed, 14 Aug 2024 14:25:23 +0000 Subject: [PATCH] Restore gccmaths on vx7r2cert except on x86_64 When we started testing against helix-cert (on x86_64), we saw that its cert GOS was providing gccmaths routines; so we figured that we would not want to provide ours, otherwise we would have a conflict at link time. This was implemented by eng/toolchain/bb-runtimes!94. However, this turned out to be a peculiarity of the x86_64 platform (and possibly a bug there); aarch64 helix-cert GOS does not provide gccmaths (neither the other architecture over vx7r2 safety profile like ppc*, for what it's worth). All in all, the proper solution at this point is to provide gccmaths on all vx7r2cert platforms except x86_64. eng/toolchain/acats#21 --- support/rts_sources/sources.py | 36 ++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/support/rts_sources/sources.py b/support/rts_sources/sources.py index c2245d94..7e786d80 100644 --- a/support/rts_sources/sources.py +++ b/support/rts_sources/sources.py @@ -446,6 +446,42 @@ "conditions": ["Add_Command_Line:yes"], "srcs": ["libgnat/a-comlin.ads", "libgnat/a-comlin.adb", "argv.c", "runtime.h"], }, + "gccmath": { + # gcc maths intrinsics are provided on no supported configuration + # of vx7r2cert (neither safety profile nor helix-cert) + # *except* x86_64 helix-cert. + "conditions": [ + "CPU_Family:arm,aarch64,ppc,ppc64,x86", + "RTS_Profile:light,light-tasking", + "Target_Word_Size:64", + ], + "srcs": [], + "vx7r2cert_srcs": [ + "hie/s-gcc.ads", + "hie/s-gcc-ti.ads", + "hie/s-gcc-ti.adb", + "hie/s-gtasl3.ads", + "hie/s-gtasl3.adb", + "hie/s-gtasr3.ads", + "hie/s-gtasr3.adb", + "hie/s-gtlsr3.ads", + "hie/s-gtlsr3.adb", + "hie/s-gtimo3.ads", + "hie/s-gtimo3.adb", + "hie/s-gtium3.ads", + "hie/s-gtium3.adb", + "hie/s-gcdimo.ads", + "hie/s-gcdimo.adb", + "hie/s-gudmo4.ads", + "hie/s-gudmo4.adb", + "hie/s-gtdmo3.ads", + "hie/s-gtiud3.ads", + "hie/s-gtiud3.adb", + "hie/s-gtidi3.ads", + "hie/s-gtidi3.adb", + "hie/s-gtumo4.ads", + ], + }, "full": { "conditions": ["RTS_Profile:embedded"], "srcs": [