1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -instcombine -S | grep "ashr" 2*9880d681SAndroid Build Coastguard Worker; PR1499 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Workerdefine void @av_cmp_q_cond_true(i32* %retval, i32* %tmp9, i64* %tmp10) { 5*9880d681SAndroid Build Coastguard WorkernewFuncRoot: 6*9880d681SAndroid Build Coastguard Worker br label %cond_true 7*9880d681SAndroid Build Coastguard Worker 8*9880d681SAndroid Build Coastguard Workerreturn.exitStub: ; preds = %cond_true 9*9880d681SAndroid Build Coastguard Worker ret void 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Workercond_true: ; preds = %newFuncRoot 12*9880d681SAndroid Build Coastguard Worker %tmp30 = load i64, i64* %tmp10 ; <i64> [#uses=1] 13*9880d681SAndroid Build Coastguard Worker %.cast = zext i32 63 to i64 ; <i64> [#uses=1] 14*9880d681SAndroid Build Coastguard Worker %tmp31 = ashr i64 %tmp30, %.cast ; <i64> [#uses=1] 15*9880d681SAndroid Build Coastguard Worker %tmp3132 = trunc i64 %tmp31 to i32 ; <i32> [#uses=1] 16*9880d681SAndroid Build Coastguard Worker %tmp33 = or i32 %tmp3132, 1 ; <i32> [#uses=1] 17*9880d681SAndroid Build Coastguard Worker store i32 %tmp33, i32* %tmp9 18*9880d681SAndroid Build Coastguard Worker %tmp34 = load i32, i32* %tmp9 ; <i32> [#uses=1] 19*9880d681SAndroid Build Coastguard Worker store i32 %tmp34, i32* %retval 20*9880d681SAndroid Build Coastguard Worker br label %return.exitStub 21*9880d681SAndroid Build Coastguard Worker} 22*9880d681SAndroid Build Coastguard Worker 23