summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/CodeGen/Generic/misched.ll20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/CodeGen/Generic/misched.ll b/test/CodeGen/Generic/misched.ll
new file mode 100644
index 0000000000..6ab1dd24a3
--- /dev/null
+++ b/test/CodeGen/Generic/misched.ll
@@ -0,0 +1,20 @@
+; RUN: llc -enable-misched -misched=shuffle -misched-bottomup < %s
+; XFAIL: *
+;
+; Interesting MachineScheduler cases.
+
+declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture, i8* nocapture, i64, i32, i1) nounwind
+
+; From oggenc.
+; After coalescing, we have a dead superreg (RAX) definition.
+define fastcc void @_preextrapolate_helper() nounwind uwtable ssp {
+entry:
+ br i1 undef, label %for.cond.preheader, label %if.end
+
+for.cond.preheader: ; preds = %entry
+ call void @llvm.memcpy.p0i8.p0i8.i64(i8* undef, i8* null, i64 128, i32 4, i1 false) nounwind
+ unreachable
+
+if.end: ; preds = %entry
+ ret void
+}