aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2012-03-05 11:52:08 -0800
committerRichard Henderson <rth@gcc.gnu.org>2012-03-05 11:52:08 -0800
commit4999c62c838dde11b309da746a563b684fe325ea (patch)
tree6e448fc21f38971cea77de1235e228d4af822d4b
parent95a6dda5e7ec9b2fa3c9674a29e743ad374534ff (diff)
downloadgcc-4999c62c838dde11b309da746a563b684fe325ea.zip
gcc-4999c62c838dde11b309da746a563b684fe325ea.tar.gz
gcc-4999c62c838dde11b309da746a563b684fe325ea.tar.bz2
re PR tree-optimization/52242 (libgomp.c/atomic-2.c failure on s390x)
PR tree-opt/52242 Revert: 2011-11-26 Richard Henderson <rth@redhat.com> * omp-low.c (expand_omp_atomic): Assume anything aligned to BIGGEST_ALIGNMENT is aligned. From-SVN: r184955
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/omp-low.c4
2 files changed, 8 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c9fa152..936a07e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
2012-03-05 Richard Henderson <rth@redhat.com>
+ PR tree-opt/52242
+ Revert: 2011-11-26 Richard Henderson <rth@redhat.com>
+ * omp-low.c (expand_omp_atomic): Assume anything aligned to
+ BIGGEST_ALIGNMENT is aligned.
+
+2012-03-05 Richard Henderson <rth@redhat.com>
+
* config/sh/sh.h (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): Move...
* config/sh/sh.c: ... here.
diff --git a/gcc/omp-low.c b/gcc/omp-low.c
index db71594..82ca4fd 100644
--- a/gcc/omp-low.c
+++ b/gcc/omp-low.c
@@ -5504,9 +5504,7 @@ expand_omp_atomic (struct omp_region *region)
unsigned int align = TYPE_ALIGN_UNIT (type);
/* __sync builtins require strict data alignment. */
- /* ??? Assume BIGGEST_ALIGNMENT *is* aligned. */
- if (exact_log2 (align) >= index
- || align * BITS_PER_UNIT >= BIGGEST_ALIGNMENT)
+ if (exact_log2 (align) >= index)
{
/* Atomic load. */
if (loaded_val == stored_val