OSDN Git Service

Mark ChangeLog
[pf3gnuchains/gcc-fork.git] / gcc / omp-low.c
index 8ab689d..82ca4fd 100644 (file)
@@ -3,7 +3,7 @@
    marshalling to implement data sharing and copying clauses.
    Contributed by Diego Novillo <dnovillo@redhat.com>
 
-   Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011
+   Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
    Free Software Foundation, Inc.
 
 This file is part of GCC.
@@ -4664,6 +4664,9 @@ expand_omp_for (struct omp_region *region)
     {
       int fn_index, start_ix, next_ix;
 
+      if (fd.chunk_size == NULL
+         && fd.sched_kind == OMP_CLAUSE_SCHEDULE_STATIC)
+       fd.chunk_size = integer_zero_node;
       gcc_assert (fd.sched_kind != OMP_CLAUSE_SCHEDULE_AUTO);
       fn_index = (fd.sched_kind == OMP_CLAUSE_SCHEDULE_RUNTIME)
                  ? 3 : fd.sched_kind;
@@ -5501,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