Make this test a bit stricter.

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
This commit is contained in:
Rafael Espindola 2014-10-23 18:44:07 +00:00
parent e852ac7772
commit 74ff8164d7
2 changed files with 17 additions and 6 deletions

View 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
}

View File

@ -0,0 +1,4 @@
@bar = global i32()* @foo
define internal i32 @foo() {
ret i32 7
}