From a335f5aeebe96e48cb154873b10fc1fd9445694b Mon Sep 17 00:00:00 2001 From: Galina Kistanova Date: Fri, 6 May 2011 18:24:46 +0000 Subject: Move few target-dependant tests to appropriate directories. llvm-svn: 131002 --- llvm/test/DebugInfo/X86/dg.exp | 5 + llvm/test/DebugInfo/X86/stmt-list.ll | 19 +++ llvm/test/DebugInfo/stmt-list.ll | 19 --- .../LoopStrengthReduce/2009-11-10-LSRCrash.ll | 130 --------------------- .../LoopStrengthReduce/X86/2009-11-10-LSRCrash.ll | 130 +++++++++++++++++++++ llvm/test/Transforms/LoopStrengthReduce/X86/dg.exp | 5 + llvm/test/Transforms/TailDup/X86/dg.exp | 5 + llvm/test/Transforms/TailDup/X86/if-tail-dup.ll | 49 ++++++++ llvm/test/Transforms/TailDup/if-tail-dup.ll | 49 -------- 9 files changed, 213 insertions(+), 198 deletions(-) create mode 100644 llvm/test/DebugInfo/X86/dg.exp create mode 100644 llvm/test/DebugInfo/X86/stmt-list.ll delete mode 100644 llvm/test/DebugInfo/stmt-list.ll delete mode 100644 llvm/test/Transforms/LoopStrengthReduce/2009-11-10-LSRCrash.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/2009-11-10-LSRCrash.ll create mode 100644 llvm/test/Transforms/LoopStrengthReduce/X86/dg.exp create mode 100644 llvm/test/Transforms/TailDup/X86/dg.exp create mode 100644 llvm/test/Transforms/TailDup/X86/if-tail-dup.ll delete mode 100644 llvm/test/Transforms/TailDup/if-tail-dup.ll diff --git a/llvm/test/DebugInfo/X86/dg.exp b/llvm/test/DebugInfo/X86/dg.exp new file mode 100644 index 00000000000..7b7bd4e7380 --- /dev/null +++ b/llvm/test/DebugInfo/X86/dg.exp @@ -0,0 +1,5 @@ +load_lib llvm.exp + +if { [llvm_supports_target X86] } { + RunLLVMTests [lsort [glob -nocomplain $srcdir/$subdir/*.{ll}]] +} diff --git a/llvm/test/DebugInfo/X86/stmt-list.ll b/llvm/test/DebugInfo/X86/stmt-list.ll new file mode 100644 index 00000000000..145649bf459 --- /dev/null +++ b/llvm/test/DebugInfo/X86/stmt-list.ll @@ -0,0 +1,19 @@ +; RUN: llc -mtriple x86_64-pc-linux-gnu < %s | FileCheck %s + +; CHECK: .section .debug_line,"",@progbits +; CHECK-NEXT: .Lsection_line: + +; CHECK: .long .Lsection_line # DW_AT_stmt_list + +define void @f() { +entry: + ret void +} + +!llvm.dbg.sp = !{!0} + +!0 = metadata !{i32 589870, i32 0, metadata !1, metadata !"f", metadata !"f", metadata !"", metadata !1, i32 1, metadata !3, i1 false, i1 true, i32 0, i32 0, i32 0, i32 256, i1 true, void ()* @f, null, null} ; [ DW_TAG_subprogram ] +!1 = metadata !{i32 589865, metadata !"test2.c", metadata !"/home/espindola/llvm", metadata !2} ; [ DW_TAG_file_type ] +!2 = metadata !{i32 589841, i32 0, i32 12, metadata !"test2.c", metadata !"/home/espindola/llvm", metadata !"clang version 3.0 ()", i1 true, i1 true, metadata !"", i32 0} ; [ DW_TAG_compile_unit ] +!3 = metadata !{i32 589845, metadata !1, metadata !"", metadata !1, i32 0, i64 0, i64 0, i32 0, i32 0, i32 0, metadata !4, i32 0, i32 0} ; [ DW_TAG_subroutine_type ] +!4 = metadata !{null} diff --git a/llvm/test/DebugInfo/stmt-list.ll b/llvm/test/DebugInfo/stmt-list.ll deleted file mode 100644 index 145649bf459..00000000000 --- a/llvm/test/DebugInfo/stmt-list.ll +++ /dev/null @@ -1,19 +0,0 @@ -; RUN: llc -mtriple x86_64-pc-linux-gnu < %s | FileCheck %s - -; CHECK: .section .debug_line,"",@progbits -; CHECK-NEXT: .Lsection_line: - -; CHECK: .long .Lsection_line # DW_AT_stmt_list - -define void @f() { -entry: - ret void -} - -!llvm.dbg.sp = !{!0} - -!0 = metadata !{i32 589870, i32 0, metadata !1, metadata !"f", metadata !"f", metadata !"", metadata !1, i32 1, metadata !3, i1 false, i1 true, i32 0, i32 0, i32 0, i32 256, i1 true, void ()* @f, null, null} ; [ DW_TAG_subprogram ] -!1 = metadata !{i32 589865, metadata !"test2.c", metadata !"/home/espindola/llvm", metadata !2} ; [ DW_TAG_file_type ] -!2 = metadata !{i32 589841, i32 0, i32 12, metadata !"test2.c", metadata !"/home/espindola/llvm", metadata !"clang version 3.0 ()", i1 true, i1 true, metadata !"", i32 0} ; [ DW_TAG_compile_unit ] -!3 = metadata !{i32 589845, metadata !1, metadata !"", metadata !1, i32 0, i64 0, i64 0, i32 0, i32 0, i32 0, metadata !4, i32 0, i32 0} ; [ DW_TAG_subroutine_type ] -!4 = metadata !{null} diff --git a/llvm/test/Transforms/LoopStrengthReduce/2009-11-10-LSRCrash.ll b/llvm/test/Transforms/LoopStrengthReduce/2009-11-10-LSRCrash.ll deleted file mode 100644 index 4032a599e8d..00000000000 --- a/llvm/test/Transforms/LoopStrengthReduce/2009-11-10-LSRCrash.ll +++ /dev/null @@ -1,130 +0,0 @@ -; RUN: llc < %s -mtriple=i386-apple-darwin11 - -define void @_ZN4llvm20SelectionDAGLowering14visitInlineAsmENS_8CallSiteE() nounwind ssp align 2 { -entry: - br i1 undef, label %bb3.i, label %bb4.i - -bb3.i: ; preds = %entry - unreachable - -bb4.i: ; preds = %entry - br i1 undef, label %bb.i.i, label %_ZNK4llvm8CallSite14getCalledValueEv.exit - -bb.i.i: ; preds = %bb4.i - unreachable - -_ZNK4llvm8CallSite14getCalledValueEv.exit: ; preds = %bb4.i - br i1 undef, label %_ZN4llvm4castINS_9InlineAsmEPNS_5ValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS6_.exit, label %bb6.i - -bb6.i: ; preds = %_ZNK4llvm8CallSite14getCalledValueEv.exit - unreachable - -_ZN4llvm4castINS_9InlineAsmEPNS_5ValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS6_.exit: ; preds = %_ZNK4llvm8CallSite14getCalledValueEv.exit - br i1 undef, label %_ZL25hasInlineAsmMemConstraintRSt6vectorIN4llvm9InlineAsm14ConstraintInfoESaIS2_EERKNS0_14TargetLoweringE.exit, label %bb.i - -bb.i: ; preds = %_ZN4llvm4castINS_9InlineAsmEPNS_5ValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS6_.exit - br label %_ZL25hasInlineAsmMemConstraintRSt6vectorIN4llvm9InlineAsm14ConstraintInfoESaIS2_EERKNS0_14TargetLoweringE.exit - -_ZL25hasInlineAsmMemConstraintRSt6vectorIN4llvm9InlineAsm14ConstraintInfoESaIS2_EERKNS0_14TargetLoweringE.exit: ; preds = %bb.i, %_ZN4llvm4castINS_9InlineAsmEPNS_5ValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS6_.exit - br i1 undef, label %bb50, label %bb27 - -bb27: ; preds = %_ZL25hasInlineAsmMemConstraintRSt6vectorIN4llvm9InlineAsm14ConstraintInfoESaIS2_EERKNS0_14TargetLoweringE.exit - br i1 undef, label %bb1.i727, label %bb.i.i726 - -bb.i.i726: ; preds = %bb27 - unreachable - -bb1.i727: ; preds = %bb27 - unreachable - -bb50: ; preds = %_ZL25hasInlineAsmMemConstraintRSt6vectorIN4llvm9InlineAsm14ConstraintInfoESaIS2_EERKNS0_14TargetLoweringE.exit - br label %bb107 - -bb51: ; preds = %bb107 - br i1 undef, label %bb105, label %bb106 - -bb105: ; preds = %bb51 - unreachable - -bb106: ; preds = %bb51 - br label %bb107 - -bb107: ; preds = %bb106, %bb50 - br i1 undef, label %bb108, label %bb51 - -bb108: ; preds = %bb107 - br i1 undef, label %bb242, label %bb114 - -bb114: ; preds = %bb108 - br i1 undef, label %bb141, label %bb116 - -bb116: ; preds = %bb114 - br i1 undef, label %bb120, label %bb121 - -bb120: ; preds = %bb116 - unreachable - -bb121: ; preds = %bb116 - unreachable - -bb141: ; preds = %bb114 - br i1 undef, label %bb182, label %bb143 - -bb143: ; preds = %bb141 - br label %bb157 - -bb144: ; preds = %bb.i.i.i843 - switch i32 undef, label %bb155 [ - i32 2, label %bb153 - i32 6, label %bb153 - i32 4, label %bb153 - ] - -bb153: ; preds = %bb144, %bb144, %bb144 - %indvar.next = add i32 %indvar, 1 ; [#uses=1] - br label %bb157 - -bb155: ; preds = %bb144 - unreachable - -bb157: ; preds = %bb153, %bb143 - %indvar = phi i32 [ %indvar.next, %bb153 ], [ 0, %bb143 ] ; [#uses=2] - %0 = icmp eq i32 undef, %indvar ; [#uses=1] - switch i16 undef, label %bb6.i841 [ - i16 9, label %_ZN4llvm4castINS_14ConstantSDNodeENS_7SDValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS5_.exit - i16 26, label %_ZN4llvm4castINS_14ConstantSDNodeENS_7SDValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS5_.exit - ] - -bb6.i841: ; preds = %bb157 - unreachable - -_ZN4llvm4castINS_14ConstantSDNodeENS_7SDValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS5_.exit: ; preds = %bb157, %bb157 - br i1 undef, label %bb.i.i.i843, label %bb1.i.i.i844 - -bb.i.i.i843: ; preds = %_ZN4llvm4castINS_14ConstantSDNodeENS_7SDValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS5_.exit - br i1 %0, label %bb158, label %bb144 - -bb1.i.i.i844: ; preds = %_ZN4llvm4castINS_14ConstantSDNodeENS_7SDValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS5_.exit - unreachable - -bb158: ; preds = %bb.i.i.i843 - br i1 undef, label %bb177, label %bb176 - -bb176: ; preds = %bb158 - unreachable - -bb177: ; preds = %bb158 - br i1 undef, label %bb179, label %bb178 - -bb178: ; preds = %bb177 - unreachable - -bb179: ; preds = %bb177 - unreachable - -bb182: ; preds = %bb141 - unreachable - -bb242: ; preds = %bb108 - unreachable -} diff --git a/llvm/test/Transforms/LoopStrengthReduce/X86/2009-11-10-LSRCrash.ll b/llvm/test/Transforms/LoopStrengthReduce/X86/2009-11-10-LSRCrash.ll new file mode 100644 index 00000000000..4032a599e8d --- /dev/null +++ b/llvm/test/Transforms/LoopStrengthReduce/X86/2009-11-10-LSRCrash.ll @@ -0,0 +1,130 @@ +; RUN: llc < %s -mtriple=i386-apple-darwin11 + +define void @_ZN4llvm20SelectionDAGLowering14visitInlineAsmENS_8CallSiteE() nounwind ssp align 2 { +entry: + br i1 undef, label %bb3.i, label %bb4.i + +bb3.i: ; preds = %entry + unreachable + +bb4.i: ; preds = %entry + br i1 undef, label %bb.i.i, label %_ZNK4llvm8CallSite14getCalledValueEv.exit + +bb.i.i: ; preds = %bb4.i + unreachable + +_ZNK4llvm8CallSite14getCalledValueEv.exit: ; preds = %bb4.i + br i1 undef, label %_ZN4llvm4castINS_9InlineAsmEPNS_5ValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS6_.exit, label %bb6.i + +bb6.i: ; preds = %_ZNK4llvm8CallSite14getCalledValueEv.exit + unreachable + +_ZN4llvm4castINS_9InlineAsmEPNS_5ValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS6_.exit: ; preds = %_ZNK4llvm8CallSite14getCalledValueEv.exit + br i1 undef, label %_ZL25hasInlineAsmMemConstraintRSt6vectorIN4llvm9InlineAsm14ConstraintInfoESaIS2_EERKNS0_14TargetLoweringE.exit, label %bb.i + +bb.i: ; preds = %_ZN4llvm4castINS_9InlineAsmEPNS_5ValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS6_.exit + br label %_ZL25hasInlineAsmMemConstraintRSt6vectorIN4llvm9InlineAsm14ConstraintInfoESaIS2_EERKNS0_14TargetLoweringE.exit + +_ZL25hasInlineAsmMemConstraintRSt6vectorIN4llvm9InlineAsm14ConstraintInfoESaIS2_EERKNS0_14TargetLoweringE.exit: ; preds = %bb.i, %_ZN4llvm4castINS_9InlineAsmEPNS_5ValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS6_.exit + br i1 undef, label %bb50, label %bb27 + +bb27: ; preds = %_ZL25hasInlineAsmMemConstraintRSt6vectorIN4llvm9InlineAsm14ConstraintInfoESaIS2_EERKNS0_14TargetLoweringE.exit + br i1 undef, label %bb1.i727, label %bb.i.i726 + +bb.i.i726: ; preds = %bb27 + unreachable + +bb1.i727: ; preds = %bb27 + unreachable + +bb50: ; preds = %_ZL25hasInlineAsmMemConstraintRSt6vectorIN4llvm9InlineAsm14ConstraintInfoESaIS2_EERKNS0_14TargetLoweringE.exit + br label %bb107 + +bb51: ; preds = %bb107 + br i1 undef, label %bb105, label %bb106 + +bb105: ; preds = %bb51 + unreachable + +bb106: ; preds = %bb51 + br label %bb107 + +bb107: ; preds = %bb106, %bb50 + br i1 undef, label %bb108, label %bb51 + +bb108: ; preds = %bb107 + br i1 undef, label %bb242, label %bb114 + +bb114: ; preds = %bb108 + br i1 undef, label %bb141, label %bb116 + +bb116: ; preds = %bb114 + br i1 undef, label %bb120, label %bb121 + +bb120: ; preds = %bb116 + unreachable + +bb121: ; preds = %bb116 + unreachable + +bb141: ; preds = %bb114 + br i1 undef, label %bb182, label %bb143 + +bb143: ; preds = %bb141 + br label %bb157 + +bb144: ; preds = %bb.i.i.i843 + switch i32 undef, label %bb155 [ + i32 2, label %bb153 + i32 6, label %bb153 + i32 4, label %bb153 + ] + +bb153: ; preds = %bb144, %bb144, %bb144 + %indvar.next = add i32 %indvar, 1 ; [#uses=1] + br label %bb157 + +bb155: ; preds = %bb144 + unreachable + +bb157: ; preds = %bb153, %bb143 + %indvar = phi i32 [ %indvar.next, %bb153 ], [ 0, %bb143 ] ; [#uses=2] + %0 = icmp eq i32 undef, %indvar ; [#uses=1] + switch i16 undef, label %bb6.i841 [ + i16 9, label %_ZN4llvm4castINS_14ConstantSDNodeENS_7SDValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS5_.exit + i16 26, label %_ZN4llvm4castINS_14ConstantSDNodeENS_7SDValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS5_.exit + ] + +bb6.i841: ; preds = %bb157 + unreachable + +_ZN4llvm4castINS_14ConstantSDNodeENS_7SDValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS5_.exit: ; preds = %bb157, %bb157 + br i1 undef, label %bb.i.i.i843, label %bb1.i.i.i844 + +bb.i.i.i843: ; preds = %_ZN4llvm4castINS_14ConstantSDNodeENS_7SDValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS5_.exit + br i1 %0, label %bb158, label %bb144 + +bb1.i.i.i844: ; preds = %_ZN4llvm4castINS_14ConstantSDNodeENS_7SDValueEEENS_10cast_rettyIT_T0_E8ret_typeERKS5_.exit + unreachable + +bb158: ; preds = %bb.i.i.i843 + br i1 undef, label %bb177, label %bb176 + +bb176: ; preds = %bb158 + unreachable + +bb177: ; preds = %bb158 + br i1 undef, label %bb179, label %bb178 + +bb178: ; preds = %bb177 + unreachable + +bb179: ; preds = %bb177 + unreachable + +bb182: ; preds = %bb141 + unreachable + +bb242: ; preds = %bb108 + unreachable +} diff --git a/llvm/test/Transforms/LoopStrengthReduce/X86/dg.exp b/llvm/test/Transforms/LoopStrengthReduce/X86/dg.exp new file mode 100644 index 00000000000..7b7bd4e7380 --- /dev/null +++ b/llvm/test/Transforms/LoopStrengthReduce/X86/dg.exp @@ -0,0 +1,5 @@ +load_lib llvm.exp + +if { [llvm_supports_target X86] } { + RunLLVMTests [lsort [glob -nocomplain $srcdir/$subdir/*.{ll}]] +} diff --git a/llvm/test/Transforms/TailDup/X86/dg.exp b/llvm/test/Transforms/TailDup/X86/dg.exp new file mode 100644 index 00000000000..7b7bd4e7380 --- /dev/null +++ b/llvm/test/Transforms/TailDup/X86/dg.exp @@ -0,0 +1,5 @@ +load_lib llvm.exp + +if { [llvm_supports_target X86] } { + RunLLVMTests [lsort [glob -nocomplain $srcdir/$subdir/*.{ll}]] +} diff --git a/llvm/test/Transforms/TailDup/X86/if-tail-dup.ll b/llvm/test/Transforms/TailDup/X86/if-tail-dup.ll new file mode 100644 index 00000000000..2e4f5be38d1 --- /dev/null +++ b/llvm/test/Transforms/TailDup/X86/if-tail-dup.ll @@ -0,0 +1,49 @@ +; RUN: opt < %s -tailduplicate | \ +; RUN: llc -march=x86 -o %t +; RUN: grep {\\\} %t +; RUN: not grep jmp %t +; END. +; This should have no unconditional jumps in it. The C source is: + +;void foo(int c, int* P) { +; if (c & 1) P[0] = 1; +; if (c & 2) P[1] = 1; +; if (c & 4) P[2] = 1; +; if (c & 8) P[3] = 1; +;} + +define void @foo(i32 %c, i32* %P) { +entry: + %tmp1 = and i32 %c, 1 ; [#uses=1] + %tmp1.upgrd.1 = icmp eq i32 %tmp1, 0 ; [#uses=1] + br i1 %tmp1.upgrd.1, label %cond_next, label %cond_true +cond_true: ; preds = %entry + store i32 1, i32* %P + br label %cond_next +cond_next: ; preds = %cond_true, %entry + %tmp5 = and i32 %c, 2 ; [#uses=1] + %tmp5.upgrd.2 = icmp eq i32 %tmp5, 0 ; [#uses=1] + br i1 %tmp5.upgrd.2, label %cond_next10, label %cond_true6 +cond_true6: ; preds = %cond_next + %tmp8 = getelementptr i32* %P, i32 1 ; [#uses=1] + store i32 1, i32* %tmp8 + br label %cond_next10 +cond_next10: ; preds = %cond_true6, %cond_next + %tmp13 = and i32 %c, 4 ; [#uses=1] + %tmp13.upgrd.3 = icmp eq i32 %tmp13, 0 ; [#uses=1] + br i1 %tmp13.upgrd.3, label %cond_next18, label %cond_true14 +cond_true14: ; preds = %cond_next10 + %tmp16 = getelementptr i32* %P, i32 2 ; [#uses=1] + store i32 1, i32* %tmp16 + br label %cond_next18 +cond_next18: ; preds = %cond_true14, %cond_next10 + %tmp21 = and i32 %c, 8 ; [#uses=1] + %tmp21.upgrd.4 = icmp eq i32 %tmp21, 0 ; [#uses=1] + br i1 %tmp21.upgrd.4, label %return, label %cond_true22 +cond_true22: ; preds = %cond_next18 + %tmp24 = getelementptr i32* %P, i32 3 ; [#uses=1] + store i32 1, i32* %tmp24 + ret void +return: ; preds = %cond_next18 + ret void +} diff --git a/llvm/test/Transforms/TailDup/if-tail-dup.ll b/llvm/test/Transforms/TailDup/if-tail-dup.ll deleted file mode 100644 index 2e4f5be38d1..00000000000 --- a/llvm/test/Transforms/TailDup/if-tail-dup.ll +++ /dev/null @@ -1,49 +0,0 @@ -; RUN: opt < %s -tailduplicate | \ -; RUN: llc -march=x86 -o %t -; RUN: grep {\\\} %t -; RUN: not grep jmp %t -; END. -; This should have no unconditional jumps in it. The C source is: - -;void foo(int c, int* P) { -; if (c & 1) P[0] = 1; -; if (c & 2) P[1] = 1; -; if (c & 4) P[2] = 1; -; if (c & 8) P[3] = 1; -;} - -define void @foo(i32 %c, i32* %P) { -entry: - %tmp1 = and i32 %c, 1 ; [#uses=1] - %tmp1.upgrd.1 = icmp eq i32 %tmp1, 0 ; [#uses=1] - br i1 %tmp1.upgrd.1, label %cond_next, label %cond_true -cond_true: ; preds = %entry - store i32 1, i32* %P - br label %cond_next -cond_next: ; preds = %cond_true, %entry - %tmp5 = and i32 %c, 2 ; [#uses=1] - %tmp5.upgrd.2 = icmp eq i32 %tmp5, 0 ; [#uses=1] - br i1 %tmp5.upgrd.2, label %cond_next10, label %cond_true6 -cond_true6: ; preds = %cond_next - %tmp8 = getelementptr i32* %P, i32 1 ; [#uses=1] - store i32 1, i32* %tmp8 - br label %cond_next10 -cond_next10: ; preds = %cond_true6, %cond_next - %tmp13 = and i32 %c, 4 ; [#uses=1] - %tmp13.upgrd.3 = icmp eq i32 %tmp13, 0 ; [#uses=1] - br i1 %tmp13.upgrd.3, label %cond_next18, label %cond_true14 -cond_true14: ; preds = %cond_next10 - %tmp16 = getelementptr i32* %P, i32 2 ; [#uses=1] - store i32 1, i32* %tmp16 - br label %cond_next18 -cond_next18: ; preds = %cond_true14, %cond_next10 - %tmp21 = and i32 %c, 8 ; [#uses=1] - %tmp21.upgrd.4 = icmp eq i32 %tmp21, 0 ; [#uses=1] - br i1 %tmp21.upgrd.4, label %return, label %cond_true22 -cond_true22: ; preds = %cond_next18 - %tmp24 = getelementptr i32* %P, i32 3 ; [#uses=1] - store i32 1, i32* %tmp24 - ret void -return: ; preds = %cond_next18 - ret void -} -- cgit v1.2.3