aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/decl.c
diff options
context:
space:
mode:
authorMatt Austern <austern@apple.com>2004-12-20 20:11:41 +0000
committerMatt Austern <austern@gcc.gnu.org>2004-12-20 20:11:41 +0000
commitb482789cca42c2e1c3d0c7dd1c140fe3e5e320a2 (patch)
treea8c54e7d5be9f8fb754934d667e66e6346bf3f62 /gcc/cp/decl.c
parent90e34bd6374760bfdd0a8807e8323eaa50a749f1 (diff)
downloadgcc-b482789cca42c2e1c3d0c7dd1c140fe3e5e320a2.zip
gcc-b482789cca42c2e1c3d0c7dd1c140fe3e5e320a2.tar.gz
gcc-b482789cca42c2e1c3d0c7dd1c140fe3e5e320a2.tar.bz2
re PR c++/19044 (Alternate asm name for atan ignored when calling __builtin_atan)
PR c++/19044 * c-common.c (set_builtin_user_assembler_name): New. * c-common.h (set_builtin_user_assembler_name): Declare. * c-decl.c (finish_decl): Use set_builtin_user_assembler_name * decl.c (make_rtl_for_nonlocal_decl): Use set_builtin_user_assembler_name * g++.dg/ext/builtin6.C: New From-SVN: r92428
Diffstat (limited to 'gcc/cp/decl.c')
-rw-r--r--gcc/cp/decl.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index 01a3312..dbaf23e 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -4644,7 +4644,12 @@ make_rtl_for_nonlocal_decl (tree decl, tree init, const char* asmspec)
DECL_HARD_REGISTER (decl) = 1;
}
else
- set_user_assembler_name (decl, asmspec);
+ {
+ if (TREE_CODE (decl) == FUNCTION_DECL
+ && DECL_BUILT_IN_CLASS (decl) == BUILT_IN_NORMAL)
+ set_builtin_user_assembler_name (decl, asmspec);
+ set_user_assembler_name (decl, asmspec);
+ }
}
/* Handle non-variables up front. */