DfType (DfaValue[] args, DfaMemoryState memState, boolean isLong) { DfaValue arg = ArrayUtil.getFirstElement(args); if (arg == null) return DfType.TOP; DfType type = memState.getDfType(arg); LongRangeSet range = isLong ? DfLongType.extractRange(type) : DfIntType.extractRange(type); return isLong ? longRange(range.abs(LongRangeType.INT64)) : intRange(range.abs(LongRangeType.INT32)); }