CodeGen peephole: fold redundant phys reg copies
[oota-llvm.git] / test / CodeGen / X86 / pr18162.ll
index 523e47db5eeebd122a0a6a96ec17e88a54aaa4c8..7912db863edbba0ff7e208750f55ff824e68c244 100644 (file)
@@ -13,15 +13,15 @@ define { i64, <2 x float> } @Foo(%"Iterator"* %this) {
 entry:
   %retval = alloca i32
   %this.addr = alloca %"Iterator"*
-  %this1 = load %"Iterator"** %this.addr
-  %bundle_ = getelementptr inbounds %"Iterator"* %this1, i32 0, i32 0
-  %0 = load i32** %bundle_
+  %this1 = load %"Iterator"*, %"Iterator"** %this.addr
+  %bundle_ = getelementptr inbounds %"Iterator", %"Iterator"* %this1, i32 0, i32 0
+  %0 = load i32*, i32** %bundle_
   %1 = call { i64, <2 x float> } @Call()
   %2 = call { i64, <2 x float> }* @CallPtr()
-  %3 = getelementptr { i64, <2 x float> }* %2, i32 0, i32 1
+  %3 = getelementptr { i64, <2 x float> }, { i64, <2 x float> }* %2, i32 0, i32 1
   %4 = extractvalue { i64, <2 x float> } %1, 1
   store <2 x float> %4, <2 x float>* %3
-  %5 = load { i64, <2 x float> }* %2
+  %5 = load { i64, <2 x float> }, { i64, <2 x float> }* %2
   ret { i64, <2 x float> } %5
 }