1 ; RUN: opt -S -reassociate < %s | FileCheck %s 2 ; rdar://9167457 3 4 ; Reassociate shouldn't break this testcase involving a secondary 5 ; reassociation. 6 7 ; CHECK: define 8 ; CHECK-NOT: undef 9 ; CHECK: %factor = mul i32 %tmp3.neg, 2 10 ; CHECK-NOT: undef 11 ; CHECK: } 12 13 define void @x0f2f640ab6718391b59ce96d9fdeda54(i32 %arg, i32 %arg1, i32 %arg2, i32* %.out) nounwind { 14 _: 15 %tmp = sub i32 %arg, %arg1 16 %tmp3 = mul i32 %tmp, -1268345047 17 %tmp4 = add i32 %tmp3, 2014710503 18 %tmp5 = add i32 %tmp3, -1048397418 19 %tmp6 = sub i32 %tmp4, %tmp5 20 %tmp7 = sub i32 -2014710503, %tmp3 21 %tmp8 = add i32 %tmp6, %tmp7 22 store i32 %tmp8, i32* %.out 23 ret void 24 } 25