Displaying 1 result from an estimated 1 matches for "lhsop0".
Did you mean:
rhsop0
2007 Mar 30
1
[LLVMdev] Cleanups in ROTL/ROTR DAG combiner code
...|| LHSShiftAmt.getOpcode() == ISD::ZERO_EXTEND
+ || LHSShiftAmt.getOpcode() == ISD::ANY_EXTEND) &&
+ (RHSShiftAmt.getOpcode() == ISD::SIGN_EXTEND
+ || RHSShiftAmt.getOpcode() == ISD::ZERO_EXTEND
+ || RHSShiftAmt.getOpcode() == ISD::ANY_EXTEND)) {
+ SDOperand LHSOp0 = LHSShiftAmt.getOperand(0);
+ SDOperand RHSOp0 = RHSShiftAmt.getOperand(0);
+ if (RHSOp0.getOpcode() == ISD::SUB &&
+ RHSOp0.getOperand(1) == LHSOp0) {
+ // fold (or (shl x, (*ext y)), (srl x, (*ext (sub 32, y)))) ->
+ // (rotr x, y)
+ // fold (or (shl x, (...