mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 18:54:02 +01:00
Renamed as' =>
llvm-as', dis' =>
llvm-dis', link' =>
llvm-link'.
llvm-svn: 8545
This commit is contained in:
parent
cd263ad17d
commit
cd4041417b
@ -1,6 +1,6 @@
|
||||
; RUN: as < %s > %t.bc
|
||||
; RUN: echo | as > %t.tmp.bc
|
||||
; RUN: link %t.tmp.bc %t.bc
|
||||
; RUN: llvm-as < %s > %t.bc
|
||||
; RUN: echo | llvm-as > %t.tmp.bc
|
||||
; RUN: llvm-link %t.tmp.bc %t.bc
|
||||
|
||||
%X = constant int 5
|
||||
%Y = internal global [2 x int*] [ int* %X, int * %X]
|
||||
|
@ -1,8 +1,8 @@
|
||||
; This fails linking when it is linked with an empty file as the first object file
|
||||
|
||||
; RUN: as > %t1.bc < /dev/null
|
||||
; RUN: as < %s > %t2.bc
|
||||
; RUN: link %t[12].bc
|
||||
; RUN: llvm-as > %t1.bc < /dev/null
|
||||
; RUN: llvm-as < %s > %t2.bc
|
||||
; RUN: llvm-link %t[12].bc
|
||||
|
||||
%work = global int (int, int)* %zip
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
; This fails linking when it is linked with an empty file as the first object file
|
||||
|
||||
; RUN: as > %t.LinkTest.bc < /dev/null
|
||||
; RUN: as < %s > %t.bc
|
||||
; RUN: link %t.LinkTest.bc %t.bc
|
||||
; RUN: llvm-as > %t.LinkTest.bc < /dev/null
|
||||
; RUN: llvm-as < %s > %t.bc
|
||||
; RUN: llvm-link %t.LinkTest.bc %t.bc
|
||||
|
||||
%work = global int 4
|
||||
%test = global int* getelementptr( int* %work, long 1)
|
||||
|
@ -1,9 +1,9 @@
|
||||
; This fails because the linker renames the external symbol not the internal
|
||||
; one...
|
||||
|
||||
; RUN: echo "implementation internal int %foo() { ret int 7 }" | as > %t.1.bc
|
||||
; RUN: as < %s > %t.2.bc
|
||||
; RUN: link %t.[12].bc | dis | grep '%foo()' | grep -v internal
|
||||
; RUN: echo "implementation internal int %foo() { ret int 7 }" | llvm-as > %t.1.bc
|
||||
; RUN: llvm-as < %s > %t.2.bc
|
||||
; RUN: llvm-link %t.[12].bc | llvm-dis | grep '%foo()' | grep -v internal
|
||||
|
||||
implementation
|
||||
int %foo() { ret int 0 }
|
||||
|
@ -1,9 +1,9 @@
|
||||
; This fails because the linker renames the non-opaque type not the opaque
|
||||
; one...
|
||||
|
||||
; RUN: echo "%Ty = type opaque" | as > %t.1.bc
|
||||
; RUN: as < %s > %t.2.bc
|
||||
; RUN: link %t.[12].bc | dis | grep '%Ty ' | grep -v opaque
|
||||
; RUN: echo "%Ty = type opaque" | llvm-as > %t.1.bc
|
||||
; RUN: llvm-as < %s > %t.2.bc
|
||||
; RUN: llvm-link %t.[12].bc | llvm-dis | grep '%Ty ' | grep -v opaque
|
||||
|
||||
%Ty = type int
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: echo "%X = linkonce global int 5 implementation linkonce int %foo() { ret int 7 }" | as > %t.1.bc
|
||||
; RUN: as < %s > %t.2.bc
|
||||
; RUN: link %t.[12].bc
|
||||
; RUN: echo "%X = linkonce global int 5 implementation linkonce int %foo() { ret int 7 }" | llvm-as > %t.1.bc
|
||||
; RUN: llvm-as < %s > %t.2.bc
|
||||
; RUN: llvm-link %t.[12].bc
|
||||
%X = external global int
|
||||
|
||||
implementation
|
||||
|
@ -1,8 +1,8 @@
|
||||
; This fails because the linker renames the non-opaque type not the opaque
|
||||
; one...
|
||||
|
||||
; RUN: echo "implementation linkonce void %foo() { ret void } " | as > %t.2.bc
|
||||
; RUN: as < %s > %t.1.bc
|
||||
; RUN: link %t.[12].bc | dis | grep foo | grep linkonce
|
||||
; RUN: echo "implementation linkonce void %foo() { ret void } " | llvm-as > %t.2.bc
|
||||
; RUN: llvm-as < %s > %t.1.bc
|
||||
; RUN: llvm-link %t.[12].bc | llvm-dis | grep foo | grep linkonce
|
||||
|
||||
declare void %foo()
|
||||
|
@ -1,9 +1,9 @@
|
||||
; This one fails because the LLVM runtime is allowing two null pointers of
|
||||
; the same type to be created!
|
||||
|
||||
; RUN: echo "%T = type int" | as > %t.2.bc
|
||||
; RUN: as < %s > %t.1.bc
|
||||
; RUN: link %t.[12].bc
|
||||
; RUN: echo "%T = type int" | llvm-as > %t.2.bc
|
||||
; RUN: llvm-as < %s > %t.1.bc
|
||||
; RUN: llvm-link %t.[12].bc
|
||||
|
||||
%T = type opaque
|
||||
|
||||
|
@ -1,9 +1,9 @@
|
||||
; This one fails because the LLVM runtime is allowing two null pointers of
|
||||
; the same type to be created!
|
||||
|
||||
; RUN: echo "%S = type { %T*} %T = type opaque" | as > %t.2.bc
|
||||
; RUN: as < %s > %t.1.bc
|
||||
; RUN: link %t.[12].bc
|
||||
; RUN: echo "%S = type { %T*} %T = type opaque" | llvm-as > %t.2.bc
|
||||
; RUN: llvm-as < %s > %t.1.bc
|
||||
; RUN: llvm-link %t.[12].bc
|
||||
|
||||
%S = type { %T* }
|
||||
%T = type int
|
||||
|
@ -1,11 +1,11 @@
|
||||
; The funcresolve pass will (intentionally) link an _internal_ function body with an
|
||||
; The funcresolve pass will (intentionally) llvm-link an _internal_ function body with an
|
||||
; external declaration. Because of this, if we LINK an internal function body into
|
||||
; a program that already has an external declaration for the function name, we must
|
||||
; rename the internal function to something that does not conflict.
|
||||
|
||||
; RUN: echo "implementation internal int %foo() { ret int 7 }" | as > %t.1.bc
|
||||
; RUN: as < %s > %t.2.bc
|
||||
; RUN: link %t.[12].bc | dis | grep 'internal' | not grep '%foo('
|
||||
; RUN: echo "implementation internal int %foo() { ret int 7 }" | llvm-as > %t.1.bc
|
||||
; RUN: llvm-as < %s > %t.2.bc
|
||||
; RUN: llvm-link %t.[12].bc | llvm-dis | grep 'internal' | not grep '%foo('
|
||||
|
||||
implementation
|
||||
declare int %foo()
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: echo "%T = type opaque" | as > %t.2.bc
|
||||
; RUN: as < %s > %t.1.bc
|
||||
; RUN: link %t.[12].bc
|
||||
; RUN: echo "%T = type opaque" | llvm-as > %t.2.bc
|
||||
; RUN: llvm-as < %s > %t.1.bc
|
||||
; RUN: llvm-link %t.[12].bc
|
||||
|
||||
%T = type opaque
|
||||
%a = constant { %T* } { %T* null }
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: echo "%T = type int" | as > %t.1.bc
|
||||
; RUN: as < %s > %t.2.bc
|
||||
; RUN: link %t.[12].bc
|
||||
; RUN: echo "%T = type int" | llvm-as > %t.1.bc
|
||||
; RUN: llvm-as < %s > %t.2.bc
|
||||
; RUN: llvm-link %t.[12].bc
|
||||
|
||||
%T = type opaque
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
|
||||
; RUN: as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "%S = type { int, int* }" | as > Output/%s.out2.bc
|
||||
; RUN: link Output/%s.out[12].bc
|
||||
; RUN: llvm-as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "%S = type { int, int* }" | llvm-as > Output/%s.out2.bc
|
||||
; RUN: llvm-link Output/%s.out[12].bc
|
||||
|
||||
%T = type opaque
|
||||
%S = type { int, %T* }
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "%S = external global { int, opaque* } declare void %F(opaque*)" | as > Output/%s.out2.bc
|
||||
; RUN: link Output/%s.out[12].bc | dis | not grep opaque
|
||||
; RUN: llvm-as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "%S = external global { int, opaque* } declare void %F(opaque*)" | llvm-as > Output/%s.out2.bc
|
||||
; RUN: llvm-link Output/%s.out[12].bc | llvm-dis | not grep opaque
|
||||
|
||||
; After linking this testcase, there should be no opaque types left. The two
|
||||
; S's should cause the opaque type to be resolved to 'int'.
|
||||
|
@ -1,8 +1,8 @@
|
||||
; It's a bad idea to go recursively traipsing through types without a safety
|
||||
; net.
|
||||
|
||||
; RUN: as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "%S = type { %S*, int* }" | as > Output/%s.out2.bc
|
||||
; RUN: link Output/%s.out[12].bc
|
||||
; RUN: llvm-as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "%S = type { %S*, int* }" | llvm-as > Output/%s.out2.bc
|
||||
; RUN: llvm-link Output/%s.out[12].bc
|
||||
|
||||
%S = type { %S*, opaque* }
|
||||
|
@ -1,9 +1,9 @@
|
||||
; Linking these a module with a specified pointer size to one without a
|
||||
; specified pointer size should not cause a warning!
|
||||
|
||||
; RUN: as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "" | as > Output/%s.out2.bc
|
||||
; RUN: link Output/%s.out[12].bc 2>&1 | not grep WARNING
|
||||
; RUN: llvm-as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "" | llvm-as > Output/%s.out2.bc
|
||||
; RUN: llvm-link Output/%s.out[12].bc 2>&1 | not grep WARNING
|
||||
|
||||
target pointersize = 64
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "%S = type int" | as > Output/%s.out2.bc
|
||||
; RUN: link Output/%s.out[21].bc
|
||||
; RUN: llvm-as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "%S = type int" | llvm-as > Output/%s.out2.bc
|
||||
; RUN: llvm-link Output/%s.out[21].bc
|
||||
|
||||
%S = type opaque
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "%S = type int" | as > Output/%s.out2.bc
|
||||
; RUN: link Output/%s.out[21].bc
|
||||
; RUN: llvm-as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "%S = type int" | llvm-as > Output/%s.out2.bc
|
||||
; RUN: llvm-link Output/%s.out[21].bc
|
||||
|
||||
%S = type opaque
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "%S = type int" | as > Output/%s.out2.bc
|
||||
; RUN: link Output/%s.out[21].bc
|
||||
; RUN: llvm-as < %s > Output/%s.out1.bc
|
||||
; RUN: echo "%S = type int" | llvm-as > Output/%s.out2.bc
|
||||
; RUN: llvm-link Output/%s.out[21].bc
|
||||
|
||||
%S = type opaque
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
; Test that appending linkage works correctly.
|
||||
|
||||
; RUN: echo "%X = appending global [1x int] [int 8]" | as > %t.2.bc
|
||||
; RUN: as < %s > %t.1.bc
|
||||
; RUN: link %t.[12].bc | dis | grep 7 | grep 4 | grep 8
|
||||
; RUN: echo "%X = appending global [1x int] [int 8]" | llvm-as > %t.2.bc
|
||||
; RUN: llvm-as < %s > %t.1.bc
|
||||
; RUN: llvm-link %t.[12].bc | llvm-dis | grep 7 | grep 4 | grep 8
|
||||
|
||||
%X = appending global [2 x int] [int 7, int 4]
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
; Test that appending linkage works correctly when arrays are the same size.
|
||||
|
||||
; RUN: echo "%X = appending global [1x int] [int 8]" | as > %t.2.bc
|
||||
; RUN: as < %s > %t.1.bc
|
||||
; RUN: link %t.[12].bc | dis | grep 7 | grep 8
|
||||
; RUN: echo "%X = appending global [1x int] [int 8]" | llvm-as > %t.2.bc
|
||||
; RUN: llvm-as < %s > %t.1.bc
|
||||
; RUN: llvm-link %t.[12].bc | llvm-dis | grep 7 | grep 8
|
||||
|
||||
%X = appending global [1 x int] [int 7]
|
||||
|
@ -1,8 +1,8 @@
|
||||
; This fails because the linker renames the non-opaque type not the opaque
|
||||
; one...
|
||||
|
||||
; RUN: echo "%X = linkonce global int 8" | as > %t.2.bc
|
||||
; RUN: as < %s > %t.1.bc
|
||||
; RUN: link %t.[12].bc | dis
|
||||
; RUN: echo "%X = linkonce global int 8" | llvm-as > %t.2.bc
|
||||
; RUN: llvm-as < %s > %t.1.bc
|
||||
; RUN: llvm-link %t.[12].bc | llvm-dis
|
||||
|
||||
%X = linkonce global int 7
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: as < %s > %t.bc
|
||||
; RUN: as < `dirname %s`/testlink2.ll > %t2.bc
|
||||
; RUN: link %t.bc %t2.bc
|
||||
; RUN: llvm-as < %s > %t.bc
|
||||
; RUN: llvm-as < `dirname %s`/testlink2.ll > %t2.bc
|
||||
; RUN: llvm-link %t.bc %t2.bc
|
||||
|
||||
%MyVar = external global int
|
||||
%MyIntList = global { \2 *, int } { { \2, int }* null, int 17 }
|
||||
|
Loading…
Reference in New Issue
Block a user