diff options
Diffstat (limited to 'test/CodeGen/CBackend')
-rw-r--r-- | test/CodeGen/CBackend/2002-08-20-RecursiveTypes.ll | 3 | ||||
-rw-r--r-- | test/CodeGen/CBackend/2002-10-15-OpaqueTypeProblem.ll | 6 | ||||
-rw-r--r-- | test/CodeGen/CBackend/2002-10-30-FunctionPointerAlloca.ll | 10 | ||||
-rw-r--r-- | test/CodeGen/CBackend/2005-03-08-RecursiveTypeCrash.ll | 5 | ||||
-rw-r--r-- | test/CodeGen/CBackend/2007-01-15-NamedArrayType.ll | 11 | ||||
-rw-r--r-- | test/CodeGen/CBackend/2008-05-21-MRV-InlineAsm.ll | 19 | ||||
-rw-r--r-- | test/CodeGen/CBackend/2011-06-08-addWithOverflow.ll | 35 | ||||
-rw-r--r-- | test/CodeGen/CBackend/X86/2008-06-04-IndirectMem.ll (renamed from test/CodeGen/CBackend/2008-06-04-IndirectMem.ll) | 0 | ||||
-rw-r--r-- | test/CodeGen/CBackend/X86/dg.exp | 5 |
9 files changed, 40 insertions, 54 deletions
diff --git a/test/CodeGen/CBackend/2002-08-20-RecursiveTypes.ll b/test/CodeGen/CBackend/2002-08-20-RecursiveTypes.ll deleted file mode 100644 index 3b2085c..0000000 --- a/test/CodeGen/CBackend/2002-08-20-RecursiveTypes.ll +++ /dev/null @@ -1,3 +0,0 @@ -; RUN: llc < %s -march=c - -@MyIntList = external global { \2*, i32 } diff --git a/test/CodeGen/CBackend/2002-10-15-OpaqueTypeProblem.ll b/test/CodeGen/CBackend/2002-10-15-OpaqueTypeProblem.ll deleted file mode 100644 index 2563d8c..0000000 --- a/test/CodeGen/CBackend/2002-10-15-OpaqueTypeProblem.ll +++ /dev/null @@ -1,6 +0,0 @@ -; RUN: llc < %s -march=c - -%MPI_Comm = type %struct.Comm* -%struct.Comm = type opaque -@thing = global %MPI_Comm* null ; <%MPI_Comm**> [#uses=0] - diff --git a/test/CodeGen/CBackend/2002-10-30-FunctionPointerAlloca.ll b/test/CodeGen/CBackend/2002-10-30-FunctionPointerAlloca.ll deleted file mode 100644 index 54e0aa6..0000000 --- a/test/CodeGen/CBackend/2002-10-30-FunctionPointerAlloca.ll +++ /dev/null @@ -1,10 +0,0 @@ -; RUN: llc < %s -march=c - - %BitField = type i32 - %tokenptr = type i32* - -define void @test() { - %pmf1 = alloca %tokenptr (%tokenptr, i8*)* ; <%tokenptr (%tokenptr, i8*)**> [#uses=0] - ret void -} - diff --git a/test/CodeGen/CBackend/2005-03-08-RecursiveTypeCrash.ll b/test/CodeGen/CBackend/2005-03-08-RecursiveTypeCrash.ll deleted file mode 100644 index 1c5f506..0000000 --- a/test/CodeGen/CBackend/2005-03-08-RecursiveTypeCrash.ll +++ /dev/null @@ -1,5 +0,0 @@ -; RUN: llc < %s -march=c - - %JNIEnv = type %struct.JNINa* - %struct.JNINa = type { i8*, i8*, i8*, void (%JNIEnv*)* } - diff --git a/test/CodeGen/CBackend/2007-01-15-NamedArrayType.ll b/test/CodeGen/CBackend/2007-01-15-NamedArrayType.ll deleted file mode 100644 index 8a5f253..0000000 --- a/test/CodeGen/CBackend/2007-01-15-NamedArrayType.ll +++ /dev/null @@ -1,11 +0,0 @@ -; PR918 -; RUN: llc < %s -march=c | not grep {l_structtype_s l_fixarray_array3} - -%structtype_s = type { i32 } -%fixarray_array3 = type [3 x %structtype_s] - -define i32 @witness(%fixarray_array3* %p) { - %q = getelementptr %fixarray_array3* %p, i32 0, i32 0, i32 0 - %v = load i32* %q - ret i32 %v -} diff --git a/test/CodeGen/CBackend/2008-05-21-MRV-InlineAsm.ll b/test/CodeGen/CBackend/2008-05-21-MRV-InlineAsm.ll deleted file mode 100644 index 8db3167..0000000 --- a/test/CodeGen/CBackend/2008-05-21-MRV-InlineAsm.ll +++ /dev/null @@ -1,19 +0,0 @@ -; RUN: llc < %s -march=c - -declare {i32, i32} @foo() - -define i32 @test() { - %A = call {i32, i32} @foo() - %B = getresult {i32, i32} %A, 0 - %C = getresult {i32, i32} %A, 1 - %D = add i32 %B, %C - ret i32 %D -} - -define i32 @test2() { - %A = call {i32, i32} asm sideeffect "...", "={cx},={di},~{dirflag},~{fpsr},~{flags},~{memory}"() - %B = getresult {i32, i32} %A, 0 - %C = getresult {i32, i32} %A, 1 - %D = add i32 %B, %C - ret i32 %D -} diff --git a/test/CodeGen/CBackend/2011-06-08-addWithOverflow.ll b/test/CodeGen/CBackend/2011-06-08-addWithOverflow.ll new file mode 100644 index 0000000..0ae480d --- /dev/null +++ b/test/CodeGen/CBackend/2011-06-08-addWithOverflow.ll @@ -0,0 +1,35 @@ +; RUN: llc < %s -march=c +; Check that uadd and sadd with overflow are handled by C Backend. + +%0 = type { i32, i1 } ; type %0 + +define i1 @func1(i32 zeroext %v1, i32 zeroext %v2) nounwind { +entry: + %t = call %0 @llvm.uadd.with.overflow.i32(i32 %v1, i32 %v2) ; <%0> [#uses=1] + %obit = extractvalue %0 %t, 1 ; <i1> [#uses=1] + br i1 %obit, label %carry, label %normal + +normal: ; preds = %entry + ret i1 true + +carry: ; preds = %entry + ret i1 false +} + +define i1 @func2(i32 signext %v1, i32 signext %v2) nounwind { +entry: + %t = call %0 @llvm.sadd.with.overflow.i32(i32 %v1, i32 %v2) ; <%0> [#uses=1] + %obit = extractvalue %0 %t, 1 ; <i1> [#uses=1] + br i1 %obit, label %carry, label %normal + +normal: ; preds = %entry + ret i1 true + +carry: ; preds = %entry + ret i1 false +} + +declare %0 @llvm.sadd.with.overflow.i32(i32, i32) nounwind + +declare %0 @llvm.uadd.with.overflow.i32(i32, i32) nounwind + diff --git a/test/CodeGen/CBackend/2008-06-04-IndirectMem.ll b/test/CodeGen/CBackend/X86/2008-06-04-IndirectMem.ll index 054a3ca..054a3ca 100644 --- a/test/CodeGen/CBackend/2008-06-04-IndirectMem.ll +++ b/test/CodeGen/CBackend/X86/2008-06-04-IndirectMem.ll diff --git a/test/CodeGen/CBackend/X86/dg.exp b/test/CodeGen/CBackend/X86/dg.exp new file mode 100644 index 0000000..833bcc5 --- /dev/null +++ b/test/CodeGen/CBackend/X86/dg.exp @@ -0,0 +1,5 @@ +load_lib llvm.exp + +if { [llvm_supports_target X86] && [llvm_gcc_supports c] } { + RunLLVMTests [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,c,cpp,s}]] +} |