-
Notifications
You must be signed in to change notification settings - Fork 5.4k
Closed
Labels
area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMICLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
Milestone
Description
Recent runs that observed the failure: first, second. Test in question.
To diagnose the cause, I used the following snippet:
var flags = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static | BindingFlags.Instance;
var t = new Thread(x => RuntimeHelpers.PrepareMethod(typeof(Program).GetMethod("Problem", flags).MethodHandle), X * 1024);
t.Start();
class Program
{
// Pseudo syntax, I used InlineIL.Fody
static int Problem()
{
ldc.i4.0
// Repeated 100 times
ldc.i4.1
add
ret
}
}Release runtime + Release Jit were tested (since that's what the CI was using), with tiered compilation off.
git bisect showed the following:
- Commits before d435388 only needeed X of 65 to succeed.
- Commits after and including d435388 needed X of 129 and above to succeed, matching the timing of the failures in CI (this test succeeded on 21st of May).
This test has a history of failing on Debug Jits (indeed, an attribute pointing to just that) - see #21374. But now, apparently, it needs 129 KB of stack even in Release. I am not sure what is the proper fix for this.
cc @AndyAyersMS
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMICLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
Type
Projects
Status
Done