Lines Matching refs:IT
44 /// FoldBitCast - Constant fold bitcast, symbolically evaluating it with
45 /// TargetData. This always returns a non-null constant, but it may be a
56 if (IntegerType *IT = dyn_cast<IntegerType>(DestTy)) {
65 // If the vector is a vector of floating point, convert it to vector of int
79 APInt Result(IT->getBitWidth(), 0);
88 return ConstantInt::get(IT, Result);
97 // vector so the code below can handle it uniformly.
103 // If this is a bitcast from constant vector -> vector, fold it.
107 // If the element types match, VMCore can fold it.
125 // we have something in FP form, recast it as integer.
139 // it to integer first.
146 // If VMCore wasn't able to fold it, bail out.
177 // Shift it to the right place, depending on endianness.
182 // Mix it in.
392 // If this isn't an integer load we can't fold it directly.
394 // If this is a float/double load, we can try folding it as an int32/64 load
452 /// produce if it is constant and determinable. If this is not determinable,
461 // If the loaded value isn't a constant expr, we can't handle it.
509 // is all undef or zero, we know what it loads.
522 // currently don't do any of this for big endian systems. It can be
540 /// these together. If target data info is available, it is provided as TD,
616 // "offsetof", fold it into 'cast int Size to T*' instead of 'gep 0, 0, 12'
647 // If this is a GEP of a GEP, fold it all into a single GEP.
681 // This makes it easy to determine if the getelementptr is "inbounds".
702 // index for this level and proceed to the next level to see if it can
731 // member, so we can't simplify it.
769 // If the incoming value is undef then skip it. Note that while we could
770 // skip the value if it is equal to the phi node itself we choose not to
873 // the width of a pointer, so it can't be done in ConstantExpr::getCast.
892 // pointer, so it can't be done in ConstantExpr::getCast.
933 /// instruction (icmp/fcmp) with the specified operands. If it fails, it
945 // ConstantExpr::getCompare cannot do this, because it doesn't have TD
1206 /// directly but for all these it is true (float)(f((double)arg)) ==