You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
JIT: assertion propagation truncates 64-bit constant during range inference #132784
MinOpts prints 0000000000000000. FullOpts instead enters b5 and throws DivideByZeroException. DOTNET_JitDoAssertionProp=0 avoids the failure.
Range inference consumes the 64-bit assertion p1 == 0xFFFE008000000000, truncates the constant to its low 32 bits (0), and incorrectly proves 0 - p1 == 0. Requiring the assertion constant to FitsIn<int> before using it to tighten an int32 Range fixes the repro.
Activity
dotnet-policy-service commentedon Aug 26, 2026
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.
AndyAyersMS commentedon Aug 26, 2026
FYI @EgorBo, you've been working in range prop recently. Seems like a simple fix.
JIT: don't truncate 64-bit constants in IsConstantInt32Assertion (#13…