Skip to content

Assertion failed '!"Inconsistent profile data"' in 'Xunit.Sdk.CollectionTracker`1+BufferedEnumerator[int]:MoveNext():bool:this' during 'Optimize control flow' #126381

@JulieLeeMSFT

Description

@JulieLeeMSFT

Summary:
JIT assert 'Inconsistent profile data' in fgprofile.cpp:4821 during 'Optimize control flow' (Tier1) under fullpgo_random_gdv_edge stress mode. Affects arm, arm64, x64 Linux and x64 Windows.

Failed in (1):

Console Log: Console Log

Failed tests:

- net11.0-linux-Release-arm-fullpgo_random_gdv_edge-(Debian.13.Arm32.Open)AzureLinux.3.Arm64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-13-helix-arm32v7
- net11.0-linux-Release-arm64-fullpgo_random_gdv_edge-AzureLinux.3.Arm64.Open
- net11.0-linux-Release-x64-fullpgo_random_gdv_edge-AzureLinux.3.Amd64.Open
- net11.0-windows-Release-x64-fullpgo_random_gdv_edge-Windows.10.Amd64.Open
  - System.Linq.Parallel.Tests

Error Message:

Assert failure(PID 37 [0x00000025], Thread: 43 [0x002b]): Assertion failed '!"Inconsistent profile data"' in 'Xunit.Sdk.CollectionTracker`1+BufferedEnumerator[int]:MoveNext():bool:this' during 'Optimize control flow' (IL size 33; hash 0x7873684e; Tier1)

    File: /__w/1/s/src/coreclr/jit/fgprofile.cpp:4821

Stack Trace:

clrjit!Compiler::fgDebugCheckProfileWeights
clrjit!Compiler::fgDebugCheckProfile
clrjit!Phase::PostPhase
clrjit!Phase::Run
clrjit!Compiler::compCompile
clrjit!Compiler::compCompileHelper
clrjit!Compiler::compCompileAfterInit
clrjit!jitNativeCode
clrjit!CILJit::compileMethod
coreclr!invokeCompileMethod
coreclr!UnsafeJitFunctionWorker
coreclr!UnsafeJitFunction
coreclr!MethodDesc::JitCompileCodeLocked
coreclr!TieredCompilationManager::CompileCodeVersion
coreclr!TieredCompilationManager::OptimizeMethod
coreclr!TieredCompilationManager::DoBackgroundWork

Analysis:
Same underlying assert as #118595 but triggered in different phase (Optimize control flow vs Lowering nodeinfo) and different stress mode (fullpgo_random_gdv_edge vs OSR). Likely same root cause in profile weight consistency checking.

Metadata

Metadata

Assignees

Labels

area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIblocking-clean-ci-optionalBlocking optional rolling runs

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions