tqchen opened a new pull request, #20371: URL: https://github.com/apache/tvm/pull/20371
Store shared integer immediate values in the existing `ffi::BigInt`, preserving declared signedness and width checks. Full-range uint64 constants become ordinary `IntImm` nodes, and the `large_uint_imm` builtin is removed. Constant construction and folding use shared primitive helpers. Construction, transport, printing, and backend emission preserve the exact value or reject unsupported values and types. Constant predicates recognize every IntImm, while consumers with native integer domains perform their own checked conversions. Immediate patterns capture the original typed node, with exact BigInt conditions and expression intermediates. Canonical and product coefficients retain exact values. Canonical split factors and their divisor/modulus arithmetic use BigInt, with an optional upper factor distinguishing finite moduli from no modulus. Signed rewrites preserve rounding, and typed-fit checks retain nested expressions when a combined factor cannot be emitted. Typed folding preserves integer overflow contracts. Modular analysis and constant bounds keep their int64 domains and conservatively handle wider immediates. Canonical index-type eligibility, dimensions, counters and backend interfaces retain their existing limits. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
