Closed
Description
COMPlus_FastTailCalls
is a new environment variable added in #341. When it's set to 0, all tail-prefixed calls are dispatched via helpers.
JIT\opt\OSR\tailrecursetry\tailrecursetry.cmd is a test that turns on on-stack replacement, it sets
set COMPlus_TieredCompilation=1
set COMPlus_TC_QuickJitForLoops=1
set COMPlus_TC_OnStackReplacement=1
If additionally we set
set COMPlus_FastTailCalls=0
the test fails with
BEGIN EXECUTION
"f:\runtime\artifacts\tests\coreclr\Windows_NT.x64.Checked\Tests\Core_Root\corerun.exe" tailrecursetry.dll
starting sum
Assert failure(PID 1896 [0x00000768], Thread: 49832 [0xc2a8]): Assertion failed 'phiFound' in 'TailRecursionWithOsrEntryInTry:F(int,int,int,int):int' during 'SSA: insert phis' (IL size 49)
File: F:\runtime\src\coreclr\src\jit\ssabuilder.cpp Line: 922
Image: f:\runtime\artifacts\tests\coreclr\Windows_NT.x64.Checked\Tests\Core_Root\CoreRun.exe
Expected: 100
Actual: -1073740286
END EXECUTION - FAILED
FAILED
category:correctness
theme:osr
skill-level:expert
cost:medium