Home | History | Annotate | Download | only in Scalar

Lines Matching refs:zext

160   /// 1) iteratively distribute s/zext towards the leaves of the expression tree
172 /// offset, distribute s/zext to the operands of all operators in UserChain.
173 /// e.g., zext(sext(a + (b + 5)) (assuming no overflow) =>
174 /// zext(sext(a)) + (zext(sext(b)) + zext(sext(5))).
177 /// distributing s/zext. e.g., the old UserChain of the above example is
178 /// 5 -> b + 5 -> a + (b + 5) -> sext(...) -> zext(sext(...)),
180 /// zext(sext(5)) -> zext(sext(b)) + zext(sext(5)) ->
181 /// zext(sext(a)) + (zext(sext(b)) + zext(sext(5))
189 /// A helper function to apply ExtInsts, a list of s/zext, to value V.
190 /// e.g., if ExtInsts = [sext i32 to i64, zext i16 to i32], this function
191 /// returns "sext i32 (zext i16 V to i32) to i64".
204 /// \p ZeroExtended Whether BO is surrounded by zext
218 /// sext/zext instructions along UserChain.
275 /// For each array index that is in the form of zext(a), convert it to sext(a)
276 /// if we can prove zext(a) <= max signed value of typeof(a). We prefer
277 /// sext(a) to zext(a), because in the special case where x + y >= 0 and
279 /// while no such case exists for zext(x + y).
282 /// zext(x + y) = zext(x) + zext(y)
284 /// zext i32(UINT_MAX + 1) to i64 !=
285 /// (zext i32 UINT_MAX to i64) + (zext i32 1 to i64)
332 // In addition, tracing into BO requires that its surrounding s/zext (if
338 // 0 | 0 | true because no s/zext exists
339 // 0 | 1 | zext(BO) == zext(A) op zext(B)
341 // 1 | 1 | zext(sext(BO)) ==
342 // | | zext(sext(A)) op zext(sext(B))
363 // zext (add/sub nuw A, B) == add/sub nuw (zext A), (zext B)
422 // sext(zext(a)) = zext(a). Verified in @sext_zext in split-gep.ll.
424 // Clear the NonNegative flag, because zext(a) >= 0 does not imply a >= 0.
427 /* ZeroExtended */ true, /* NonNegative */ false).zext(BitWidth);
444 // If Current is a constant, apply s/zext using ConstantExpr::getCast.
459 // Remove all nullptrs (used to be s/zext) from UserChain.
482 "We only traced into two types of CastInst: sext and zext");
637 // For GEP operand zext(a), if a <= max signed value of typeof(a), then
638 // the sign bit of a is zero and sext(a) = zext(a). Because the GEP is