aboutsummaryrefslogtreecommitdiff
path: root/gcc/defaults.h
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2010-09-09 14:12:57 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2010-09-09 14:12:57 +0000
commitba885ec559ca39e0dc23641dbbe67cc0072378f3 (patch)
treeda6907a1c5c815841942c5773bfc6c02f7b889e8 /gcc/defaults.h
parente3cdb7cf9a0d934b9cdc24d40d730141e5752f60 (diff)
downloadgcc-ba885ec559ca39e0dc23641dbbe67cc0072378f3.zip
gcc-ba885ec559ca39e0dc23641dbbe67cc0072378f3.tar.gz
gcc-ba885ec559ca39e0dc23641dbbe67cc0072378f3.tar.bz2
configure.ac (gnu_indirect_function): New test.
* configure.ac (gnu_indirect_function): New test. * configure: Rebuilt. * config.in (HAVE_GAS_INDIRECT_FUNCTION): New. * defaults.h (IFUNC_ASM_TYPE): Provide default. * doc/extend.texi (Function Attributes): Document ifunc. * varasm.c (do_assemble_alias): Deal with ifuncs too. c-family/ * c-common.c (handle_alias_ifunc_attribute): New, broken out of ... (handle_alias_attribute): ... here. (handle_ifunc_attribute): New. testsuite/ * lib/target-supports-dg.exp (dg-require-ifunc): New. * lib/target-supports.exp (check_ifunc_available): New. * gcc.dg/attr-ifunc-1.c: New. * gcc.dg/attr-ifunc-2.c: New. * gcc.dg/attr-ifunc-3.c: New. * gcc.dg/attr-ifunc-4.c: New. * gcc.dg/attr-ifunc-5.c: New. * testsuite/g++.dg/ext/attr-ifunc-1.C * testsuite/g++.dg/ext/attr-ifunc-2.C * testsuite/g++.dg/ext/attr-ifunc-3.C * testsuite/g++.dg/ext/attr-ifunc-4.C From-SVN: r164110
Diffstat (limited to 'gcc/defaults.h')
-rw-r--r--gcc/defaults.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/defaults.h b/gcc/defaults.h
index e30ec17..62b8228 100644
--- a/gcc/defaults.h
+++ b/gcc/defaults.h
@@ -142,6 +142,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#endif
#endif
+#ifndef IFUNC_ASM_TYPE
+#define IFUNC_ASM_TYPE "gnu_indirect_function"
+#endif
+
#ifndef TLS_COMMON_ASM_OP
#define TLS_COMMON_ASM_OP ".tls_common"
#endif