Check in LLVM r95781.
diff --git a/test/CodeGen/CBackend/2002-08-30-StructureOrderingTest.ll b/test/CodeGen/CBackend/2002-08-30-StructureOrderingTest.ll
new file mode 100644
index 0000000..1187a37
--- /dev/null
+++ b/test/CodeGen/CBackend/2002-08-30-StructureOrderingTest.ll
@@ -0,0 +1,8 @@
+; RUN: llc < %s -march=c
+
+; This testcase fails because the C backend does not arrange to output the 
+; contents of a structure type before it outputs the structure type itself.
+
+@Y = external global { { i32 } }                ; <{ { i32 } }*> [#uses=0]
+@X = external global { float }          ; <{ float }*> [#uses=0]
+