aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2016-01-05 10:57:01 +0000
committerNick Clifton <nickc@gcc.gnu.org>2016-01-05 10:57:01 +0000
commit3360dc9fc25128a3194bad65e94305944ff223d2 (patch)
treed2ca4564bb65ba5f9882ea28f96d9d89b564b94b /gcc
parent56f2741b1719eaf565ec751c78aefbb15a258a15 (diff)
downloadgcc-3360dc9fc25128a3194bad65e94305944ff223d2.zip
gcc-3360dc9fc25128a3194bad65e94305944ff223d2.tar.gz
gcc-3360dc9fc25128a3194bad65e94305944ff223d2.tar.bz2
re PR target/66655 (miscompilation due to ipa-ra on MinGW)
PR target/66655 * config/i386/cygming.h (MAKE_DECL_ONE_ONLY): Define to use weak decls if weak support is available. From-SVN: r232071
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/i386/cygming.h5
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 4ec3229..c1f2cfc 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2016-01-05 Nick Clifton <nickc@redhat.com>
+
+ PR target/66655
+ * config/i386/cygming.h (MAKE_DECL_ONE_ONLY): Define to use weak
+ decls if weak support is available.
+
2016-01-04 Martin Sebor <msebor@redhat.com>
* doc/invoke.texi (Warning Options): Document -Winvalid-memory-model.
diff --git a/gcc/config/i386/cygming.h b/gcc/config/i386/cygming.h
index 1cf56f6..71019cb 100644
--- a/gcc/config/i386/cygming.h
+++ b/gcc/config/i386/cygming.h
@@ -432,6 +432,11 @@ do { \
fputc ('\n', (FILE)); \
} \
while (0)
+
+/* Use the weak support for ONE_ONLY decls. */
+#undef MAKE_DECL_ONE_ONLY
+#define MAKE_DECL_ONE_ONLY(DECL) (DECL_WEAK (DECL) = 1)
+
#endif /* HAVE_GAS_WEAK */
/* FIXME: SUPPORTS_WEAK && TARGET_HAVE_NAMED_SECTIONS is true,