Home | History | Annotate | Download | only in dmd

Lines Matching refs:imin

298     SignExtendedNumber imin, imax;
302 imin = another.imin;
308 imin = a;
314 imin = lower;
354 if (cd.imin < ab.imin)
355 ab.imin = cd.imin;
373 uinteger_t minHalfChunk = imin.value & ~halfChunkMask;
375 int minHalfChunkNegativity = imin.negative; // 1 = neg, 0 = nonneg, -1 = chunk containing ::max
391 imin.value &= mask;
394 imin.negative = (imin.value & ~halfChunkMask) != 0;
397 imin.value = (imin.value ^ halfChunkMask) - halfChunkMask;
402 imin = SignExtendedNumber(~halfChunkMask, true);
417 uinteger_t minChunk = imin.value & ~mask;
419 if (minChunk == maxChunk && imin.negative == imax.negative)
421 imin.value &= mask;
426 imin.value = 0;
429 imin.negative = imax.negative = false;
438 if (imin.value > 0x10FFFFUL) // ??
439 imin.value = 0x10FFFFUL; // ??
469 return imin <= a.imin && imax >= a.imax;
474 return (imin.negative && !imax.negative)
475 || (!imin.negative && imin.value == 0);
482 else if (!imin.negative)
483 return IntRange(-imax, -imin);
487 return IntRange(imaxAbsNeg < imin ? imaxAbsNeg : imin,
494 return IntRange(imin < other.imin ? imin : other.imin,
500 if (!union_ || imin > other.imin)
501 imin = other.imin;
510 imin.negative?'-':'+', cast(ulong)imin.value,
518 hasNegRange = imin.negative;
521 negRange.imin = imin;
527 nonNegRange.imin = imin.negative ? SignExtendedNumber(0) : imin;
534 return IntRange(~imax, ~imin);
539 imin);
547 if ((imin.negative ^ imax.negative) != 1 && (rhs.imin.negative ^ rhs.imax.negative) != 1)
556 if ((imin.negative ^ imax.negative) == 1 && (rhs.imin.negative ^ rhs.imax.negative) == 1)
572 if ((l.imin.negative ^ l.imax.negative) == 1)
577 auto minAndNeg = minAnd(l, IntRange(r.imin, SignExtendedNumber(-1)));
579 auto maxAndNeg = maxAnd(l, IntRange(r.imin, SignExtendedNumber(-1)));
595 if ((imin.negative ^ imax.negative) == 0 && (rhs.imin.negative ^ rhs.imax.negative) == 0)
604 if ((imin.negative ^ imax.negative) == 1 && (rhs.imin.negative ^ rhs.imax.negative) == 1)
607 SignExtendedNumber min = l.imin.value < r.imin.value ? l.imin : r.imin;
610 l.imin.value = 0;
611 l.imin.negative = false;
612 r.imin.value = 0;
613 r.imin.negative = false;
620 if ((imin.negative ^ imax.negative) == 1)
625 auto minOrNeg = minOr(l, IntRange(r.imin, SignExtendedNumber(-1)));
627 auto maxOrNeg = maxOr(l, IntRange(r.imin, SignExtendedNumber(-1)));
645 return IntRange(imin + rhs.imin, imax + rhs.imax);
650 return IntRange(imin - rhs.imax, imax - rhs.imin);
657 bdy[0] = imin * rhs.imin;
658 bdy[1] = imin * rhs.imax;
659 bdy[2] = imax * rhs.imin;
667 if (rhs.imax.value == 0 && rhs.imin.value == 0)
676 else if(rhs.imin.value == 0)
678 rhs.imin.value++;
681 if (!imin.negative && !imax.negative && !rhs.imin.negative && !rhs.imax.negative)
683 return IntRange(imin / rhs.imax, imax / rhs.imin);
689 bdy[0] = imin / rhs.imin;
690 bdy[1] = imin / rhs.imax;
691 bdy[2] = imax / rhs.imin;
718 irDen.imin = irDen.imin + SignExtendedNumber(1);
719 irDen.imax = -irDen.imin;
721 if (!irNum.imin.negative)
723 irNum.imin.value = 0;
725 else if (irNum.imin < irDen.imin)
727 irNum.imin = irDen.imin;
745 if (rhs.imin.negative)
750 SignExtendedNumber lower = imin << (imin.negative ? rhs.imax : rhs.imin);
751 SignExtendedNumber upper = imax << (imax.negative ? rhs.imin : rhs.imax);
758 if (rhs.imin.negative)
763 SignExtendedNumber lower = imin >> (imin.negative ? rhs.imin : rhs.imax);
764 SignExtendedNumber upper = imax >> (imax.negative ? rhs.imax : rhs.imin);
771 if (rhs.imin.negative)
776 return IntRange(imin >> rhs.imax, imax >> rhs.imin);
803 if (!lhsc.imin.negative)
805 lhsc.imin.value = 0;
807 if (!rhsc.imin.negative)
809 rhsc.imin.value = 0;
813 else if (lhsc.imin.negative & rhsc.imin.negative)
829 if (~lhsc.imin.value & d)
831 lhsc.imin.value = 0;
836 if (~rhsc.imin.value & d)
838 rhsc.imin.value = 0;
842 else if (lhsc.imin.value & rhsc.imin.value & d)
883 if (~lhsc.imin.value & d)
885 lhsc.imin.value = 0;
887 if (~rhsc.imin.value & d)
889 rhsc.imin.value = 0;
892 else if (~lhsc.imin.value & d && lhsc.imax.value & d)
896 else if (~rhsc.imin.value & d && rhsc.imax.value & d)