OSDN Git Service

2004-09-07 Frank Ch. Eigler <fche@redhat.com>
[pf3gnuchains/gcc-fork.git] / gcc / builtins.c
index 5096522..6d4cd8f 100644 (file)
@@ -4349,9 +4349,17 @@ std_gimplify_va_arg_expr (tree valist, tree type, tree *pre_p, tree *post_p)
   addr = fold_convert (build_pointer_type (type), addr);
 
   if (indirect)
   addr = fold_convert (build_pointer_type (type), addr);
 
   if (indirect)
-    addr = build_fold_indirect_ref (addr);
+    {
+      addr = build_fold_indirect_ref (addr);
+      if (flag_mudflap) /* Don't instrument va_arg INDIRECT_REF.  */
+        mf_mark (addr);
+    }
+
+  addr = build_fold_indirect_ref (addr);
+  if (flag_mudflap) /* Don't instrument va_arg INDIRECT_REF.  */
+    mf_mark (addr);
 
 
-  return build_fold_indirect_ref (addr);
+  return addr;
 }
 
 /* Return a dummy expression of type TYPE in order to keep going after an
 }
 
 /* Return a dummy expression of type TYPE in order to keep going after an