aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKai Tietz <ktietz@redhat.com>2012-11-20 17:17:16 +0100
committerKai Tietz <ktietz@gcc.gnu.org>2012-11-20 17:17:16 +0100
commit4a397c3e09d7909f4585b864da9660544d8349f3 (patch)
treec80a4728a09105e64282b8c989fa80d29d2fe2f9
parent25caa91e991976d04f2f4a87ccf94a877ebefb46 (diff)
downloadgcc-4a397c3e09d7909f4585b864da9660544d8349f3.zip
gcc-4a397c3e09d7909f4585b864da9660544d8349f3.tar.gz
gcc-4a397c3e09d7909f4585b864da9660544d8349f3.tar.bz2
re PR target/55268 (gcc4.8 mingw-w64 wrong stdcall import symbols generated after rev 193204)
PR target/55268 * i386.c (ix86_mangle_decl_assembler_name): Use SUBTARGET_MANGLE_DECL_ASSEMBLER_NAME if defined. * cygming.h (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Rename to SUBTARGET_MANGLE_DECL_ASSEMBLER_NAME. From-SVN: r193666
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/config/i386/cygming.h2
-rw-r--r--gcc/config/i386/i386.c5
3 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7c07c32..0500144 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2012-11-20 Kai Tietz <ktietz@redhat.com>
+
+ PR target/55268
+ * i386.c (ix86_mangle_decl_assembler_name): Use
+ SUBTARGET_MANGLE_DECL_ASSEMBLER_NAME if defined.
+ * cygming.h (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Rename
+ to SUBTARGET_MANGLE_DECL_ASSEMBLER_NAME.
+
2012-11-20 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.c (ix86_expand_call): Emit CLOBBERs in VOIDmode.
diff --git a/gcc/config/i386/cygming.h b/gcc/config/i386/cygming.h
index 8455a67..55c800e 100644
--- a/gcc/config/i386/cygming.h
+++ b/gcc/config/i386/cygming.h
@@ -471,7 +471,7 @@ do { \
#define TARGET_VALID_DLLIMPORT_ATTRIBUTE_P i386_pe_valid_dllimport_attribute_p
#define TARGET_CXX_ADJUST_CLASS_AT_DEFINITION i386_pe_adjust_class_at_definition
-#define TARGET_MANGLE_DECL_ASSEMBLER_NAME i386_pe_mangle_decl_assembler_name
+#define SUBTARGET_MANGLE_DECL_ASSEMBLER_NAME i386_pe_mangle_decl_assembler_name
#undef TARGET_ASM_ASSEMBLE_VISIBILITY
#define TARGET_ASM_ASSEMBLE_VISIBILITY i386_pe_assemble_visibility
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 84cc5c9..8ce32be 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -28980,7 +28980,10 @@ ix86_mangle_decl_assembler_name (tree decl, tree id)
/* For function version, add the target suffix to the assembler name. */
if (TREE_CODE (decl) == FUNCTION_DECL
&& DECL_FUNCTION_VERSIONED (decl))
- return ix86_mangle_function_version_assembler_name (decl, id);
+ id = ix86_mangle_function_version_assembler_name (decl, id);
+#ifdef SUBTARGET_MANGLE_DECL_ASSEMBLER_NAME
+ id = SUBTARGET_MANGLE_DECL_ASSEMBLER_NAME (decl, id);
+#endif
return id;
}