aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMaya Rashish <coypu@sdf.org>2021-02-15 18:38:55 +0000
committerRichard Sandiford <richard.sandiford@arm.com>2021-02-15 18:38:55 +0000
commitf9d4544df5533df9f6144f4ca40b64195fd3de47 (patch)
treeaf76d8d4d3a4a2a56fd13103c1b82bf25a68a5ae /gcc
parenta33927c9ab4af3f4595251ce0c8ba54db821b039 (diff)
downloadgcc-f9d4544df5533df9f6144f4ca40b64195fd3de47.zip
gcc-f9d4544df5533df9f6144f4ca40b64195fd3de47.tar.gz
gcc-f9d4544df5533df9f6144f4ca40b64195fd3de47.tar.bz2
aarch64: Run SUBTARGET_INIT_BUILTINS if it exists
Some subtargets don't provide the canonical function names as the symbol name in C libraries, and libcalls will only work if the builtins are patched to emit the correct library name. For example, on NetBSD, cabsl has the symbol name __c99_cabsl, and the patching is done via netbsd_patch_builtin. With this change, libgfortran.so is correctly built with a reference to __c99_cabsl, instead of "cabsl" which is not defined. gcc/ChangeLog: * config/aarch64/aarch64.c (aarch64_init_builtins): Call SUBTARGET_INIT_BUILTINS.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/aarch64/aarch64.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 146ed8c..6fda6bc 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -13492,6 +13492,9 @@ aarch64_init_builtins ()
{
aarch64_general_init_builtins ();
aarch64_sve::init_builtins ();
+#ifdef SUBTARGET_INIT_BUILTINS
+ SUBTARGET_INIT_BUILTINS;
+#endif
}
/* Implement TARGET_FOLD_BUILTIN. */