diff options
| author | Evan Cheng <evan.cheng@apple.com> | 2008-10-13 18:46:18 +0000 |
|---|---|---|
| committer | Evan Cheng <evan.cheng@apple.com> | 2008-10-13 18:46:18 +0000 |
| commit | da9b7528830a12df508a2ab721d3cc0fd9df5a6e (patch) | |
| tree | a0fc8f1ade86abaa8c443828bdca5ad885ca932b /llvm/test | |
| parent | 8547c2d56f3944d368b16868af8d073eace76299 (diff) | |
| download | bcm5719-llvm-da9b7528830a12df508a2ab721d3cc0fd9df5a6e.tar.gz bcm5719-llvm-da9b7528830a12df508a2ab721d3cc0fd9df5a6e.zip | |
FIX PR2794. Make sure SIGN_EXTEND_INREG nodes introduced by LegalizeSetCCOperands are leglized. Patch by Richard Pennington.
llvm-svn: 57460
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/CodeGen/Mips/2008-10-13-LegalizerBug.ll | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/Mips/2008-10-13-LegalizerBug.ll b/llvm/test/CodeGen/Mips/2008-10-13-LegalizerBug.ll new file mode 100644 index 00000000000..783850a7827 --- /dev/null +++ b/llvm/test/CodeGen/Mips/2008-10-13-LegalizerBug.ll @@ -0,0 +1,29 @@ +; RUN: llvm-as < %s | llc -march=mips +; PR2794 + +define i32 @main(i8*) nounwind { +entry: + br label %continue.outer + +continue.outer: ; preds = %case4, %entry + %p.0.ph.rec = phi i32 [ 0, %entry ], [ %indvar.next, %case4 ] ; <i32> [#uses=2] + %p.0.ph = getelementptr i8* %0, i32 %p.0.ph.rec ; <i8*> [#uses=1] + %1 = load i8* %p.0.ph ; <i8> [#uses=1] + switch i8 %1, label %infloop [ + i8 0, label %return.split + i8 76, label %case4 + i8 108, label %case4 + i8 104, label %case4 + i8 42, label %case4 + ] + +case4: ; preds = %continue.outer, %continue.outer, %continue.outer, %continue.outer + %indvar.next = add i32 %p.0.ph.rec, 1 ; <i32> [#uses=1] + br label %continue.outer + +return.split: ; preds = %continue.outer + ret i32 0 + +infloop: ; preds = %infloop, %continue.outer + br label %infloop +} |

