Home | History | Annotate | Download | only in SelectionDAG

Lines Matching refs:magics

2848   APInt::ms magics = Divisor.magic();
2856 DAG.getConstant(magics.m, dl, VT));
2861 DAG.getConstant(magics.m, dl, VT)).getNode(), 1);
2865 if (Divisor.isStrictlyPositive() && magics.m.isNegative()) {
2870 if (Divisor.isNegative() && magics.m.isStrictlyPositive()) {
2876 if (magics.s > 0) {
2879 DAG.getConstant(magics.s, dl, getShiftAmountTy(Q.getValueType(), DL)));
2911 APInt::mu magics = Divisor.magicu();
2917 if (magics.a != 0 && !Divisor[0]) {
2925 magics = Divisor.lshr(Shift).magicu(Shift);
2926 assert(magics.a == 0 && "Should use cheap fixup now");
2933 Q = DAG.getNode(ISD::MULHU, dl, VT, Q, DAG.getConstant(magics.m, dl, VT));
2937 DAG.getConstant(magics.m, dl, VT)).getNode(), 1);
2943 if (magics.a == 0) {
2944 assert(magics.s < Divisor.getBitWidth() &&
2948 DAG.getConstant(magics.s, dl, getShiftAmountTy(Q.getValueType(), DL)));
2960 DAG.getConstant(magics.s - 1, dl,