OSDN Git Service

* patch_tester.sh (usage): Watermark is not lexicographic.
[pf3gnuchains/gcc-fork.git] / gcc / gimple-low.c
index 74f9ffb..a860dd1 100644 (file)
@@ -1,6 +1,6 @@
 /* Tree lowering pass.  Lowers GIMPLE into unstructured form.
 
-   Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+   Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -108,11 +108,7 @@ lower_function_body (void)
         It now fills in for many such returns.  Failure to remove this
         will result in incorrect results for coverage analysis.  */
       x = TREE_VALUE (t);
-#ifdef USE_MAPPED_LOCATION
       SET_EXPR_LOCATION (x, UNKNOWN_LOCATION);
-#else
-      SET_EXPR_LOCUS (x, NULL);
-#endif
       tsi_link_after (&i, x, TSI_CONTINUE_LINKING);
     }
 
@@ -251,6 +247,8 @@ lower_stmt (tree_stmt_iterator *tsi, struct lower_data *data)
     case OMP_ORDERED:
     case OMP_CRITICAL:
     case OMP_RETURN:
+    case OMP_ATOMIC_LOAD:
+    case OMP_ATOMIC_STORE:
     case OMP_CONTINUE:
       break;
 
@@ -398,7 +396,7 @@ block_may_fallthru (const_tree block)
 {
   /* This CONST_CAST is okay because expr_last returns it's argument
      unmodified and we assign it to a const_tree.  */
-  const_tree stmt = expr_last ((tree)CONST_CAST(block));
+  const_tree stmt = expr_last (CONST_CAST_TREE(block));
 
   switch (stmt ? TREE_CODE (stmt) : ERROR_MARK)
     {
@@ -718,10 +716,8 @@ lower_builtin_setjmp (tree_stmt_iterator *tsi)
 void
 record_vars_into (tree vars, tree fn)
 {
-  struct function *saved_cfun = cfun;
-
   if (fn != current_function_decl)
-    cfun = DECL_STRUCT_FUNCTION (fn);
+    push_cfun (DECL_STRUCT_FUNCTION (fn));
 
   for (; vars; vars = TREE_CHAIN (vars))
     {
@@ -742,7 +738,7 @@ record_vars_into (tree vars, tree fn)
     }
 
   if (fn != current_function_decl)
-    cfun = saved_cfun;
+    pop_cfun ();
 }