Skip to content

JIT: stack walk failure in arm64 function fragments #91139

@AndyAyersMS

Description

@AndyAyersMS

Compile: TestClass156-test-assertion.cs.txt

Run on osx arm64 with

export COMPlus_JitAggressiveInlining=1
export COMPlus_JitSplitFunctionSize=100
export COMPlus_GCStress=0x4

Assert failure(PID 94626 [0x000171a2], Thread: 23328476 [0x163f6dc]): !"About to FailFast. set DOTNET_AssertOnFailFast=0 if this is expected"
    File: /Users/andya/repos/runtime0/src/coreclr/vm/jithelpers.cpp Line: 4616
    Image: /Users/andya/repos/runtime0/artifacts/tests/coreclr/osx.arm64.Checked/Tests/Core_Root/corerun

(may also repro on other arm64 hosts, did not try)

By increasing the split function size you can make the test "pass":

export COMPlus_JitAggressiveInlining=1
export COMPlus_JitSplitFunctionSize=138
export COMPlus_GCStress=0x4

Unhandled exception. System.OverflowException: Value was either too large or too small for a Decimal.
   at System.Decimal.op_Multiply(Decimal d1, Decimal d2)
   at TestClass.LeafMethod0() in /Users/andya/bugs/antigen/156.cs:line 66
   at TestClass.Method21(S2 p_s2_593, UInt16& p_ushort_594, Double& p_double_595, S2 p_s2_596, S1 p_s1_597, UInt32 p_uint_598, Decimal& p_decimal_599, S1& p_s1_600) in /Users/andya/bugs/antigen/156.cs:line 1309
   at TestClass.Method0() in /Users/andya/bugs/antigen/156.cs:line 5701
   at TestClass.Main(String[] args) in /Users/andya/bugs/antigen/156.cs:line 5798

Metadata

Metadata

Assignees

Labels

arch-arm64area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIbug

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions