For PR1319: Upgrade to new test harness.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36091 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Reid Spencer 2007-04-15 22:20:47 +00:00
parent a6a996d319
commit d3b1f6d3e0
55 changed files with 133 additions and 91 deletions

View File

@ -1,3 +1,3 @@
load_lib llvm-dg.exp
load_lib llvm.exp
llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]]
RunLLVMTests [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]]

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | not grep '.byte[[:space:]]*true'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | \
; RUN: not grep {.byte\[\[:space:\]\]*true}
%X = global bool true

View File

@ -1,4 +1,4 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | grep '(%esp'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | grep {(%esp}
declare sbyte* %llvm.returnaddress(uint)
declare sbyte* %llvm.frameaddress(uint)

View File

@ -1,4 +1,4 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | not grep 'j[lgbe]'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | not grep {j\[lgbe\]}
int %max(int %A, int %B) {
%gt = setgt int %A, %B

View File

@ -2,7 +2,8 @@
; overlapping live intervals. When two overlapping intervals have the same
; value, they can be joined though.
;
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -regalloc=linearscan | not grep 'mov %[A-Z]\{2,3\}, %[A-Z]\{2,3\}'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -regalloc=linearscan | \
; RUN: not grep {mov %\[A-Z\]\\\{2,3\\\}, %\[A-Z\]\\\{2,3\\\}}
long %test(long %x) {
entry:

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | grep 'shld' | wc -l | grep 1
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | \
; RUN: grep shld | wc -l | grep 1
;
; Check that the isel does not fold the shld, which already folds a load
; and has two uses, into a store.

View File

@ -1,5 +1,9 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mtriple=i686-apple-darwin8 -relocation-model=static | grep 'movl _last' | wc -l | grep 1 &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mtriple=i686-apple-darwin8 -relocation-model=static | grep 'cmpl.*_last' | wc -l | grep 1
; RUN: llvm-upgrade < %s | llvm-as | \
; RUN: llc -march=x86 -mtriple=i686-apple-darwin8 -relocation-model=static | \
; RUN: grep {movl _last} | wc -l | grep 1
; RUN: llvm-upgrade < %s | llvm-as | \
; RUN: llc -march=x86 -mtriple=i686-apple-darwin8 -relocation-model=static | \
; RUN: grep {cmpl.*_last} | wc -l | grep 1
%block = external global ubyte* ; <ubyte**> [#uses=1]
%last = external global int ; <int*> [#uses=3]

View File

@ -1,7 +1,8 @@
; Coalescing from R32 to a subset R32_. Once another register coalescer bug is
; fixed, the movb should go away as well.
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -relocation-model=static | grep 'movl' | wc -l
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -relocation-model=static | \
; RUN: grep movl | wc -l
%B = external global uint
%C = external global ushort*

View File

@ -1,5 +1,5 @@
; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 -stats 2>&1 |\
; RUN: grep 'asm-printer' | grep 35
; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 -stats |&\
; RUN: grep {asm-printer} | grep 35
target datalayout = "e-p:32:32"
define void @foo(i32* %mc, i32* %bp, i32* %ms, i32* %xmb, i32* %mpp, i32* %tpmm, i32* %ip, i32* %tpim, i32* %dpp, i32* %tpdm, i32* %bpi, i32 %M) {

View File

@ -1,6 +1,6 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | grep 'setnp'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -enable-unsafe-fp-math | not grep 'setnp'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | grep setnp
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -enable-unsafe-fp-math | \
; RUN: not grep setnp
uint %test(float %f) {
%tmp = seteq float %f, 0.000000e+00

View File

@ -1,7 +1,8 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=att | grep 'movl 4(%eax),%ebp' &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=att | grep 'movl 0(%eax), %ebx'
; PR850
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=att | \
; RUN: grep {movl 4(%eax),%ebp}
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=att | \
; RUN: grep {movl 0(%eax), %ebx}
int %foo(int %__s.i.i, int %tmp5.i.i, int %tmp6.i.i, int %tmp7.i.i, int %tmp8.i.i ) {

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mcpu=i386 | not grep 'movl %eax, %edx'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mcpu=i386 | \
; RUN: not grep {movl %eax, %edx}
int %foo(int %t, int %C) {
entry:

View File

@ -1,4 +1,4 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | grep 'subl $4, %esp'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | grep {subl \$4, %esp}
target triple = "i686-pc-linux-gnu"

View File

@ -1,6 +1,7 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86-64 &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86-64 | not grep 'movb %sil, %ah' &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86-64 | grep 'movzbw %al, %ax'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86-64 | \
; RUN: not grep {movb %sil, %ah}
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86-64 | \
; RUN: grep {movzbw %al, %ax}
void %handle_vector_size_attribute() {
entry:

View File

@ -1,7 +1,8 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | grep 3721182122 | wc -l | grep 2 &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | grep -E 'movl _?bytes2' | wc -l | grep 1
; PR1022, 1023
; PR1022, PR1023
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | \
; RUN: grep 3721182122 | wc -l | grep 2
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | \
; RUN: grep -E {movl _?bytes2} | wc -l | grep 1
%fmt = constant [4 x sbyte] c"%x\0A\00"
%bytes = constant [4 x sbyte] c"\AA\BB\CC\DD"

View File

@ -1,6 +1,6 @@
; RUN: llvm-as < %s | llc -mtriple=x86_64-apple-darwin | \
; RUN: %prcontext 'mulss LCPI1_3' 1 | grep mulss | wc -l | grep 1
; PR1075
; RUN: llvm-as < %s | llc -mtriple=x86_64-apple-darwin | \
; RUN: %prcontext {mulss LCPI1_3} 1 | grep mulss | wc -l | grep 1
define float @foo(float %x) {
%tmp1 = mul float %x, 3.000000e+00

View File

@ -1,5 +1,5 @@
; RUN: llvm-as < %s | llc -march=x86 | grep 'orl $1, %eax' &&
; RUN: llvm-as < %s | llc -march=x86 | grep 'leal 3(,%eax,8)'
; RUN: llvm-as < %s | llc -march=x86 | grep {orl \$1, %eax}
; RUN: llvm-as < %s | llc -march=x86 | grep {leal 3(,%eax,8)'
;; This example can't fold the or into an LEA.
define i32 @test(float ** %tmp2, i32 %tmp12) {

View File

@ -1,5 +1,5 @@
; RUN: llvm-as < %s | llc &&
; RUN: llvm-as < %s | llc -march=x86 -mtriple=i686-darwin | grep 'addl $12, %esp'
; RUN: llvm-as < %s | llc -march=x86 -mtriple=i686-darwin | \
; RUN: grep {addl \$12, %esp}
define void @foo(i8** %buf, i32 %size, i32 %col, i8* %p) {
entry:

View File

@ -1,4 +1,4 @@
; RUN: llvm-as < %s | llc -march=x86 | grep 'mov %gs:72, %eax'
; RUN: llvm-as < %s | llc -march=x86 | grep {mov %gs:72, %eax}
target datalayout = "e-p:32:32"
target triple = "i686-apple-darwin9"

View File

@ -1,4 +1,5 @@
; RUN: llvm-as < %s | llc -mcpu=yonah -march=x86 | grep 'cmpltsd %xmm0, %xmm0'
; RUN: llvm-as < %s | llc -mcpu=yonah -march=x86 | \
; RUN: grep {cmpltsd %xmm0, %xmm0}
target datalayout = "e-p:32:32"
target triple = "i686-apple-darwin9"

View File

@ -1,4 +1,4 @@
; RUN: llvm-as < %s | llc -march=x86 | grep 'psrlw $8, %xmm0'
; RUN: llvm-as < %s | llc -march=x86 | grep {psrlw \$8, %xmm0}
target datalayout = "e-p:32:32"
target triple = "i686-apple-darwin9"

View File

@ -1,5 +1,7 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -relocation-model=static | grep 'test1 $_GV' &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -relocation-model=static | grep 'test2 _GV'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -relocation-model=static | \
; RUN: grep {test1 \$_GV}
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -relocation-model=static | \
; RUN: grep {test2 _GV}
; PR882
target datalayout = "e-p:32:32"

View File

@ -2,7 +2,8 @@
; insertion of register-register copies.
; Make sure there are only 3 mov's for each testcase
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | grep 'mov ' | wc -l | grep 6
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | \
; RUN: grep {mov } | wc -l | grep 6
target triple = "i686-pc-linux-gnu"

View File

@ -1,3 +1,3 @@
load_lib llvm-dg.exp
load_lib llvm.exp
llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]]
RunLLVMTests [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]]

View File

@ -1,6 +1,9 @@
; Make sure this testcase codegens to the fabs instruction, not a call to fabsf
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mattr=-sse2,-sse3 | grep 'fabs$' | wc -l | grep 1 &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mattr=-sse2,-sse3 -enable-unsafe-fp-math | grep 'fabs$' | wc -l | grep 2
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mattr=-sse2,-sse3 | \
; RUN: grep fabs\$ | wc -l | grep 1
; RUN: llvm-upgrade < %s | llvm-as | \
; RUN: llc -march=x86 -mattr=-sse2,-sse3 -enable-unsafe-fp-math | \
; RUN: grep fabs\$ | wc -l | grep 2
target endian = little
target pointersize = 32

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel -mcpu=yonah | grep 'ret 20'
; RUN: llvm-upgrade < %s | llvm-as | \
; RUN: llc -march=x86 -x86-asm-syntax=intel -mcpu=yonah | grep {ret 20}
; Check that a fastcc function pops its stack variables before returning.

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | grep 'add ESP, 8'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | \
; RUN: grep {add ESP, 8}
target triple = "i686-pc-linux-gnu"

View File

@ -1,4 +1,5 @@
; RUN: llvm-as < %s | llc -march=x86 -x86-asm-syntax=intel | grep 'mov EDX, 1'
; RUN: llvm-as < %s | llc -march=x86 -x86-asm-syntax=intel | \
; RUN: grep {mov EDX, 1}
; check that fastcc is passing stuff in regs.
declare x86_fastcallcc i64 @callee(i64)

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mtriple=mingw32 | grep '@12'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mtriple=mingw32 | \
; RUN: grep {@12}
; Check that a fastcall function gets correct mangling

View File

@ -1,5 +1,6 @@
;; Test that this FP immediate is stored in the constant pool as a float.
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mattr=-sse2,-sse3 | grep '.long.1123418112'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mattr=-sse2,-sse3 | \
; RUN: grep {.long.1123418112}
double %D() { ret double 123.0 }

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mcpu=i386 | grep fucomi.*st.[12]
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mcpu=i386 | \
; RUN: grep {fucomi.*st.\[12\]}
; PR1012
float %foo(float *%col.2.0) {

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | grep ST | not grep 'fadd\|fsub\|fdiv\|fmul'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | \
; RUN: grep ST | not grep {fadd\\|fsub\\|fdiv\\|fmul}
; Test that the load of the constant is folded into the operation.

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | grep ST | not grep 'fadd\|fsub\|fdiv\|fmul'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | \
; RUN: grep ST | not grep {fadd\\|fsub\\|fdiv\\|fmul}
; Test that the load of the memory location is folded into the operation.

View File

@ -1,5 +1,5 @@
; RUN: llvm-as < %s | llc -march=x86-64 | grep 'movq 8(%rdi), %rdx' &&
; RUN: llvm-as < %s | llc -march=x86-64 | grep 'movq (%rdi), %rax'
; RUN: llvm-as < %s | llc -march=x86-64 | grep {movq 8(%rdi), %rdx}
; RUN: llvm-as < %s | llc -march=x86-64 | grep {movq (%rdi), %rax}
define i128 @test(i128 *%P) {
%A = load i128* %P

View File

@ -1,5 +1,6 @@
; RUN: llvm-as < %s | llc -march=x86 | not grep lea &&
; RUN: llvm-as < %s | llc -march=x86 -mtriple=i686-apple-darwin8 | grep 'movl $4, (%ecx,%eax,4)'
; RUN: llvm-as < %s | llc -march=x86 | not grep lea
; RUN: llvm-as < %s | llc -march=x86 -mtriple=i686-apple-darwin8 | \
; RUN: grep {movl \$4, (%ecx,%eax,4)}
define i32 @test(i32* %X, i32 %B) {
; This gep should be sunk out of this block into the load/store users.

View File

@ -1,7 +1,7 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | not grep call
declare bool %llvm.isunordered(double)
declare bool %llvm.isunordered.f64(double)
bool %test_isnan(double %X) {
%R = call bool %llvm.isunordered(double %X, double %X)
%R = call bool %llvm.isunordered.f64(double %X, double %X)
ret bool %R
}

View File

@ -1,5 +1,7 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | grep 'lea EAX, DWORD PTR \[... + 4\*... - 5\]' &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | not grep add
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | \
; RUN: grep {lea EAX, DWORD PTR \\\[... + 4\\*... - 5\\\]}
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | \
; RUN: not grep add
int %test1(int %A, int %B) {
%tmp1 = shl int %A, ubyte 2 ; <int> [#uses=1]

View File

@ -1,11 +1,11 @@
; RUN: llvm-as < %s | llc -march=x86-64 | grep 'leal (%rdi,%rdi,2), %eax' &&
; RUN: llvm-as < %s | llc -march=x86-64 | grep {leal (%rdi,%rdi,2), %eax}
define i32 @test(i32 %a) {
%tmp2 = mul i32 %a, 3 ; <i32> [#uses=1]
ret i32 %tmp2
}
; RUN: llvm-as < %s | llc -march=x86-64 | grep 'leaq (,%rdi,4), %rax'
; RUN: llvm-as < %s | llc -march=x86-64 | grep {leaq (,%rdi,4), %rax}
define i64 @test2(i64 %a) {
%tmp2 = shl i64 %a, 2
%tmp3 = or i64 %tmp2, %a

View File

@ -1,9 +1,9 @@
; RUN: llvm-upgrade < %s | llvm-as | \
; RUN: llc -relocation-model=dynamic-no-pic -mtriple=i686-apple-darwin8.7.2 |\
; RUN: grep L_Arr.non_lazy_ptr &&
; RUN: grep L_Arr.non_lazy_ptr
; RUN: llvm-upgrade < %s | llvm-as | \
; RUN: llc -relocation-model=dynamic-no-pic -mtriple=i686-apple-darwin8.7.2 |\
; RUN: %prcontext L_Arr.non_lazy_ptr 1 | grep '4(%esp)'
; RUN: %prcontext L_Arr.non_lazy_ptr 1 | grep {4(%esp)}
%Arr = external global [0 x int] ; <[0 x int]*> [#uses=2]

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | grep 'A(' | wc -l | grep 1
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | \
; RUN: grep {A(} | wc -l | grep 1
;
; Make sure the common loop invariant _A(reg) is hoisted up to preheader.

View File

@ -6,7 +6,8 @@
; Check that the shift gets turned into an LEA.
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | not grep 'mov E.X, E.X'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | \
; RUN: not grep {mov E.X, E.X}
%G = external global int

View File

@ -1,7 +1,8 @@
;; Both functions in this testcase should codegen to the same function, and
;; neither of them should require spilling anything to the stack.
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -stats 2>&1 | not grep 'Number of register spills'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -stats |& \
; RUN: not grep {Number of register spills}
;; This can be compiled to use three registers if the loads are not
;; folded into the multiplies, 2 registers otherwise.

View File

@ -1,4 +1,3 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | not grep div
int %test1(int %X) {

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | grep ro[rl] | wc -l | grep 12
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | \
; RUN: grep {ro\[rl\]} | wc -l | grep 12
uint %rotl32(uint %A, ubyte %Amt) {
%B = shl uint %A, ubyte %Amt

View File

@ -1,5 +1,7 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | grep 'shld.*CL' &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | not grep 'mov CL, BL'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | \
; RUN: grep {shld.*CL}
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | \
; RUN: not grep {mov CL, BL}
; PR687

View File

@ -1,4 +1,5 @@
; RUN: llvm-as < %s | llc -relocation-model=static -march=x86 | grep 'shll $3' | wc -l | grep 2
; RUN: llvm-as < %s | llc -relocation-model=static -march=x86 | \
; RUN: grep {shll \$3} | wc -l | grep 2
; This should produce two shll instructions, not any lea's.

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | grep sh[lr]d | wc -l | grep 5
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | \
; RUN: grep {sh\[lr\]d} | wc -l | grep 5
long %test1(long %X, ubyte %C) {
%Y = shl long %X, ubyte %C

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | grep 's[ah][rl]l' | wc -l | grep 1
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | \
; RUN: grep {s\[ah\]\[rl\]l} | wc -l | grep 1
int* %test1(int *%P, uint %X) {
%Y = shr uint %X, ubyte 2

View File

@ -1,5 +1,4 @@
; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 &&
; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | not getp test
; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | not grep test
define float @test1(float %a, float %b) {
%tmp = tail call float @copysignf( float %b, float %a )

View File

@ -1,4 +1,4 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | not grep 'mov'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | not grep mov
;
; Test the add and load are folded into the store instruction.

View File

@ -1,4 +1,5 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | grep 'and DWORD PTR' | wc -l | grep 2
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -x86-asm-syntax=intel | \
; RUN: grep {and DWORD PTR} | wc -l | grep 2
target endian = little
target pointersize = 32

View File

@ -1,8 +1,9 @@
; RUN: llvm-as < %s | llc -mtriple=i686-pc-linux-gnu -relocation-model=pic &&
; RUN: llvm-as < %s | llc -mtriple=i686-pc-linux-gnu -relocation-model=pic | grep _GLOBAL_OFFSET_TABLE_ &&
; RUN: llvm-as < %s | llc -mtriple=i686-pc-linux-gnu -relocation-model=pic | grep piclabel | wc -l | grep 3 &&
; RUN: llvm-as < %s | llc -mtriple=i686-pc-linux-gnu -relocation-model=pic | grep GOT | wc -l | grep 3 &&
; RUN: llvm-as < %s | llc -mtriple=i686-pc-linux-gnu -relocation-model=pic | grep GOTOFF | wc -l | grep 0
; RUN: llvm-as < %s | \
; RUN: llc -mtriple=i686-pc-linux-gnu -relocation-model=pic -o %t -f
; RUN: grep _GLOBAL_OFFSET_TABLE_ %t
; RUN: grep piclabel %t | wc -l | grep 3
; RUN: grep GOT %t | wc -l | grep 3
; RUN: not grep GOTOFF %t | wc -l
@ptr = external global i32*
@dst = external global i32

View File

@ -1,9 +1,10 @@
; RUN: llvm-as < %s | llc -mtriple=i686-pc-linux-gnu -relocation-model=pic &&
; RUN: llvm-as < %s | llc -mtriple=i686-pc-linux-gnu -relocation-model=pic | grep _GLOBAL_OFFSET_TABLE_ &&
; RUN: llvm-as < %s | llc -mtriple=i686-pc-linux-gnu -relocation-model=pic | grep piclabel | wc -l | grep 3 &&
; RUN: llvm-as < %s | llc -mtriple=i686-pc-linux-gnu -relocation-model=pic | grep PLT | wc -l | grep 1 &&
; RUN: llvm-as < %s | llc -mtriple=i686-pc-linux-gnu -relocation-model=pic | grep "GOT" | wc -l | grep 1 &&
; RUN: llvm-as < %s | llc -mtriple=i686-pc-linux-gnu -relocation-model=pic | grep "GOTOFF" | wc -l | grep 0
; RUN: llvm-as < %s | \
; RUN: llc -mtriple=i686-pc-linux-gnu -relocation-model=pic -o %t -f
; RUN: grep _GLOBAL_OFFSET_TABLE_ %t
; RUN: grep piclabel %t | wc -l | grep 3
; RUN: grep PLT %t | wc -l | grep 1
; RUN: grep "GOT" %t | wc -l | grep 1
; RUN: not grep "GOTOFF" %t
@pfoo = external global void(...)*

View File

@ -1,5 +1,7 @@
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mattr=+sse2 | grep 'subl.*60'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mattr=+sse2 | grep 'movdqa.*32'
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mattr=+sse2 | \
; RUN: grep {subl.*60}
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 -mattr=+sse2 | \
; RUN: grep {movdqa.*32}
void %test() {
tail call void %xx( int 1, int 2, int 3, int 4, int 5, int 6, int 7, <2 x long> cast (<4 x int> < int 4, int 3, int 2, int 1 > to <2 x long>), <2 x long> cast (<4 x int> < int 8, int 7, int 6, int 5 > to <2 x long>), <2 x long> cast (<4 x int> < int 6, int 4, int 2, int 0 > to <2 x long>), <2 x long> cast (<4 x int> < int 8, int 4, int 2, int 1 > to <2 x long>), <2 x long> cast (<4 x int> < int 0, int 1, int 3, int 9 > to <2 x long>) )

View File

@ -1,4 +1,4 @@
; RUN: llvm-as < %s | llc | grep 'movl %edi, %eax'
; RUN: llvm-as < %s | llc | grep {movl %edi, %eax}
; The input value is already sign extended, don't re-extend it.
; This testcase corresponds to:
; int test(short X) { return (int)X; }