1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -reassociate -S | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker; PR12169 3*9880d681SAndroid Build Coastguard Worker; PR12764 4*9880d681SAndroid Build Coastguard Worker; XFAIL: * 5*9880d681SAndroid Build Coastguard Worker; Transform disabled until PR13021 is fixed. 6*9880d681SAndroid Build Coastguard Worker 7*9880d681SAndroid Build Coastguard Workerdefine i64 @f(i64 %x0) { 8*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: @f( 9*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: mul i64 %x0, 208 10*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: add i64 %{{.*}}, 1617 11*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: ret i64 12*9880d681SAndroid Build Coastguard Worker %t0 = add i64 %x0, 1 13*9880d681SAndroid Build Coastguard Worker %t1 = add i64 %x0, 2 14*9880d681SAndroid Build Coastguard Worker %t2 = add i64 %x0, 3 15*9880d681SAndroid Build Coastguard Worker %t3 = add i64 %x0, 4 16*9880d681SAndroid Build Coastguard Worker %t4 = add i64 %x0, 5 17*9880d681SAndroid Build Coastguard Worker %t5 = add i64 %x0, 6 18*9880d681SAndroid Build Coastguard Worker %t6 = add i64 %x0, 7 19*9880d681SAndroid Build Coastguard Worker %t7 = add i64 %x0, 8 20*9880d681SAndroid Build Coastguard Worker %t8 = add i64 %x0, 9 21*9880d681SAndroid Build Coastguard Worker %t9 = add i64 %x0, 10 22*9880d681SAndroid Build Coastguard Worker %t10 = add i64 %x0, 11 23*9880d681SAndroid Build Coastguard Worker %t11 = add i64 %x0, 12 24*9880d681SAndroid Build Coastguard Worker %t12 = add i64 %x0, 13 25*9880d681SAndroid Build Coastguard Worker %t13 = add i64 %x0, 14 26*9880d681SAndroid Build Coastguard Worker %t14 = add i64 %x0, 15 27*9880d681SAndroid Build Coastguard Worker %t15 = add i64 %x0, 16 28*9880d681SAndroid Build Coastguard Worker %t16 = add i64 %x0, 17 29*9880d681SAndroid Build Coastguard Worker %t17 = add i64 %x0, 18 30*9880d681SAndroid Build Coastguard Worker %t18 = add i64 %t17, %t0 31*9880d681SAndroid Build Coastguard Worker %t19 = add i64 %t18, %t1 32*9880d681SAndroid Build Coastguard Worker %t20 = add i64 %t19, %t2 33*9880d681SAndroid Build Coastguard Worker %t21 = add i64 %t20, %t3 34*9880d681SAndroid Build Coastguard Worker %t22 = add i64 %t21, %t4 35*9880d681SAndroid Build Coastguard Worker %t23 = add i64 %t22, %t5 36*9880d681SAndroid Build Coastguard Worker %t24 = add i64 %t23, %t6 37*9880d681SAndroid Build Coastguard Worker %t25 = add i64 %t24, %t7 38*9880d681SAndroid Build Coastguard Worker %t26 = add i64 %t25, %t8 39*9880d681SAndroid Build Coastguard Worker %t27 = add i64 %t26, %t9 40*9880d681SAndroid Build Coastguard Worker %t28 = add i64 %t27, %t10 41*9880d681SAndroid Build Coastguard Worker %t29 = add i64 %t28, %t11 42*9880d681SAndroid Build Coastguard Worker %t30 = add i64 %t29, %t12 43*9880d681SAndroid Build Coastguard Worker %t31 = add i64 %t30, %t13 44*9880d681SAndroid Build Coastguard Worker %t32 = add i64 %t31, %t14 45*9880d681SAndroid Build Coastguard Worker %t33 = add i64 %t32, %t15 46*9880d681SAndroid Build Coastguard Worker %t34 = add i64 %t33, %t16 47*9880d681SAndroid Build Coastguard Worker %t35 = add i64 %t34, %x0 48*9880d681SAndroid Build Coastguard Worker %t36 = add i64 %t0, %t1 49*9880d681SAndroid Build Coastguard Worker %t37 = add i64 %t36, %t2 50*9880d681SAndroid Build Coastguard Worker %t38 = add i64 %t37, %t3 51*9880d681SAndroid Build Coastguard Worker %t39 = add i64 %t38, %t4 52*9880d681SAndroid Build Coastguard Worker %t40 = add i64 %t39, %t5 53*9880d681SAndroid Build Coastguard Worker %t41 = add i64 %t40, %t6 54*9880d681SAndroid Build Coastguard Worker %t42 = add i64 %t41, %t7 55*9880d681SAndroid Build Coastguard Worker %t43 = add i64 %t42, %t8 56*9880d681SAndroid Build Coastguard Worker %t44 = add i64 %t43, %t9 57*9880d681SAndroid Build Coastguard Worker %t45 = add i64 %t44, %t10 58*9880d681SAndroid Build Coastguard Worker %t46 = add i64 %t45, %t11 59*9880d681SAndroid Build Coastguard Worker %t47 = add i64 %t46, %t12 60*9880d681SAndroid Build Coastguard Worker %t48 = add i64 %t47, %t13 61*9880d681SAndroid Build Coastguard Worker %t49 = add i64 %t48, %t14 62*9880d681SAndroid Build Coastguard Worker %t50 = add i64 %t49, %t15 63*9880d681SAndroid Build Coastguard Worker %t51 = add i64 %t50, %t16 64*9880d681SAndroid Build Coastguard Worker %t52 = add i64 %t51, %t17 65*9880d681SAndroid Build Coastguard Worker %t53 = add i64 %t52, %t18 66*9880d681SAndroid Build Coastguard Worker %t54 = add i64 %t53, %t19 67*9880d681SAndroid Build Coastguard Worker %t55 = add i64 %t54, %t20 68*9880d681SAndroid Build Coastguard Worker %t56 = add i64 %t55, %t21 69*9880d681SAndroid Build Coastguard Worker %t57 = add i64 %t56, %t22 70*9880d681SAndroid Build Coastguard Worker %t58 = add i64 %t57, %t23 71*9880d681SAndroid Build Coastguard Worker %t59 = add i64 %t58, %t24 72*9880d681SAndroid Build Coastguard Worker %t60 = add i64 %t59, %t25 73*9880d681SAndroid Build Coastguard Worker %t61 = add i64 %t60, %t26 74*9880d681SAndroid Build Coastguard Worker %t62 = add i64 %t61, %t27 75*9880d681SAndroid Build Coastguard Worker %t63 = add i64 %t62, %t28 76*9880d681SAndroid Build Coastguard Worker %t64 = add i64 %t63, %t29 77*9880d681SAndroid Build Coastguard Worker %t65 = add i64 %t64, %t30 78*9880d681SAndroid Build Coastguard Worker %t66 = add i64 %t65, %t31 79*9880d681SAndroid Build Coastguard Worker %t67 = add i64 %t66, %t32 80*9880d681SAndroid Build Coastguard Worker %t68 = add i64 %t67, %t33 81*9880d681SAndroid Build Coastguard Worker %t69 = add i64 %t68, %t34 82*9880d681SAndroid Build Coastguard Worker %t70 = add i64 %t69, %t35 83*9880d681SAndroid Build Coastguard Worker %t71 = add i64 %t70, %x0 84*9880d681SAndroid Build Coastguard Worker ret i64 %t71 85*9880d681SAndroid Build Coastguard Worker} 86