Move va_opt in darwin-c.c into GC memory.  The
varray code was allocating this in GC memory but
the mechanism wasn't being told about it, so GC
could reuse the memory causing a crash.  7210265.

Users with local darwin llvm-gcc builds may have
to rerun configure.

llvm-svn: 81455
diff --git a/llvm-gcc-4.2/gcc/config.gcc b/llvm-gcc-4.2/gcc/config.gcc
index 0112a81..b17b7d8 100644
--- a/llvm-gcc-4.2/gcc/config.gcc
+++ b/llvm-gcc-4.2/gcc/config.gcc
@@ -430,7 +430,7 @@
   tm_p_file="${tm_p_file} darwin-protos.h"
   # APPLE LOCAL 5681645
   tmake_file="t-darwin ${cpu_type}/t-darwin"
-  target_gtfiles="\$(srcdir)/config/darwin.c"
+  target_gtfiles="\$(srcdir)/config/darwin.c \$(srcdir)/config/darwin-c.c"
   extra_options="${extra_options} darwin.opt"
   c_target_objs="darwin-c.o"
   cxx_target_objs="darwin-c.o"
diff --git a/llvm-gcc-4.2/gcc/config/darwin-c.c b/llvm-gcc-4.2/gcc/config/darwin-c.c
index 42bbd82..4ef760d 100644
--- a/llvm-gcc-4.2/gcc/config/darwin-c.c
+++ b/llvm-gcc-4.2/gcc/config/darwin-c.c
@@ -412,7 +412,7 @@
 /* APPLE LOCAL end pragma reverse_bitfields */
 
 /* APPLE LOCAL begin optimization pragmas 3124235/3420242 */
-varray_type va_opt;
+static GTY(()) varray_type va_opt;
 
 static void
 push_opt_level (int level, int size)
@@ -1245,3 +1245,4 @@
   return decl;
 }
 /* APPLE LOCAL end radar 2996215 - 6068877 */
+#include "gt-darwin-c.h"
diff --git a/llvm-gcc-4.2/gcc/config/t-darwin b/llvm-gcc-4.2/gcc/config/t-darwin
index 5a2dcd3..abd8254 100644
--- a/llvm-gcc-4.2/gcc/config/t-darwin
+++ b/llvm-gcc-4.2/gcc/config/t-darwin
@@ -16,10 +16,11 @@
 
 darwin-c.o: $(srcdir)/config/darwin-c.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
   $(TM_H) $(CPPLIB_H) $(TREE_H) c-pragma.h $(C_TREE_H) toplev.h $(TM_P_H) \
-  c-incpath.h flags.h $(C_COMMON_H)
+  c-incpath.h flags.h $(C_COMMON_H) gt-darwin-c.h
 	$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(srcdir)/config/darwin-c.c $(PREPROCESSOR_DEFINES)
 
 gt-darwin.h : s-gtype ; @true
+gt-darwin-c.h : s-gtype ; @true
 
 # APPLE LOCAL begin mainline 2007-06-14 5235474
 darwin-driver.o: $(srcdir)/config/darwin-driver.c \