Description
The following program hits an assertion on arm64.
Reproduction Steps
// Generated by Fuzzlyn v1.5 on 2022-04-17 16:25:43// Run on Arm64 Linux// Seed: 10863771617286163364// Reduced from 174.2 KiB to 0.5 KiB in 00:03:09// Hits JIT assert in Release:// Assertion failed 'divMod->OperGet() != GT_UMOD' in 'Program:Main(Fuzzlyn.ExecutionServer.IRuntime)' during 'Lowering nodeinfo' (IL size 30; hash 0xade6b36b; FullOpts)// // File: /__w/1/s/src/coreclr/jit/lower.cpp Line: 5500// publicclassProgram{publicstaticIRuntimes_rt;publicstaticulongs_1;publicstaticvoidMain(){varvr1=(uint)((int)M2(refs_1,0)%(long)1);M2(refs_1,vr1);}publicstaticbyteM2(refulongarg0,uintarg1){s_rt.WriteLine(arg0);return0;}}publicinterfaceIRuntime{voidWriteLine<T>(Tvalue);}publicclassRuntime:IRuntime{publicvoidWriteLine<T>(Tvalue)=>System.Console.WriteLine(value);}Expected behavior
No assertion hit.
Actual behavior
Assertion hit.
Regression?
Presumably from one of the recent modulo optimizations.
Known Workarounds
No response
Configuration
No response
Other information
cc @TIHan @dotnet/jit-contrib
Description
The following program hits an assertion on arm64.
Reproduction Steps
Expected behavior
No assertion hit.
Actual behavior
Assertion hit.
Regression?
Presumably from one of the recent modulo optimizations.
Known Workarounds
No response
Configuration
No response
Other information
cc @TIHan @dotnet/jit-contrib