OSDN Git Service

Make this test a bit stricter.
authorRafael Espindola <rafael.espindola@gmail.com>
Thu, 23 Oct 2014 18:44:07 +0000 (18:44 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Thu, 23 Oct 2014 18:44:07 +0000 (18:44 +0000)
This now:
* Forces the linker to include the internal definition.
* Checks the full output.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@220494 91177308-0d34-0410-b5e6-96231b3b80d8

test/Linker/2003-01-30-LinkerRename.ll
test/Linker/Inputs/2003-01-30-LinkerRename.ll [new file with mode: 0644]

index cbf7541..1e25d3e 100644 (file)
@@ -1,10 +1,17 @@
-; This fails because the linker renames the external symbol not the internal 
-; one...
-
-; RUN: echo "define internal i32 @foo() { ret i32 7 } " | llvm-as > %t.1.bc
+; RUN: llvm-as %S/Inputs/2003-01-30-LinkerRename.ll -o %t.1.bc
 ; RUN: llvm-as %s -o %t.2.bc
 ; RUN: llvm-link %t.1.bc %t.2.bc -S | FileCheck %s
-; CHECK: internal{{.*}}@foo{{[0-9]}}()
 
-define i32 @foo() { ret i32 0 }
+; CHECK: @bar = global i32 ()* @foo2
+
+; CHECK:      define internal i32 @foo2() {
+; CHECK-NEXT:   ret i32 7
+; CHECK-NEXT: }
+
+; CHECK:      define i32 @foo() {
+; CHECK-NEXT:   ret i32 0
+; CHECK-NEXT: }
 
+define i32 @foo() {
+  ret i32 0
+}
diff --git a/test/Linker/Inputs/2003-01-30-LinkerRename.ll b/test/Linker/Inputs/2003-01-30-LinkerRename.ll
new file mode 100644 (file)
index 0000000..5c6b5f5
--- /dev/null
@@ -0,0 +1,4 @@
+@bar = global i32()* @foo
+define internal i32 @foo() {
+  ret i32 7
+}