Skip to content

Assertion failed 'block->bbTryIndex == blockTryIndex[block->bbNum]' in 'System.Collections.Immutable.Tests.ImmutableArrayTest #117581

Closed

Description

@jkotas
  Starting:    System.Collections.Immutable.Tests (parallel test collections = on [2 threads], stop on fail = off)

Assert failure(PID 35 [0x00000023], Thread: 63 [0x003f]): Assertion failed 'block->bbTryIndex == blockTryIndex[block->bbNum]' in 'System.Collections.Immutable.Tests.ImmutableArrayTest+<>c:<RemoveRangeEnumerableInvalid>b__128_15():this' during 'Update flow graph opt pass' (IL size 22; hash 0x56d3b844; Tier1)

    File: /__w/1/s/src/coreclr/jit/jiteh.cpp:3731
    Image: /root/helix/work/correlation/dotnet

Build Information

Build: https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_build/results?buildId=1091084
Build error leg or test failing: System.Collections.Immutable.Tests.WorkItemExecution
Pull request: #117023

Error Message

Fill the error message using step by step known issues guidance.

{
  "ErrorMessage": "block->bbTryIndex == blockTryIndex[block->bbNum]",
  "ErrorPattern": "",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}

Known issue validation

Build: 🔎 https://dev.azure.com/dnceng-public/public/_build/results?buildId=1091084
Error message validated: [block->bbTryIndex == blockTryIndex[block->bbNum]]
Result validation: ✅ Known issue matched with the provided build.
Validation performed at: 7/13/2025 9:59:12 AM UTC

Report

Build Definition Test Pull Request
1093412 dotnet/runtime System.Collections.Immutable.Tests.WorkItemExecution #117578
1093197 dotnet/runtime System.Collections.Immutable.Tests.WorkItemExecution #117584
1092691 dotnet/runtime System.Collections.Immutable.Tests.WorkItemExecution #117549
1091084 dotnet/runtime System.Collections.Immutable.Tests.WorkItemExecution #117023

Summary

24-Hour Hit Count 7-Day Hit Count 1-Month Count
1 4 4

Activity

  1. added
    blocking-clean-ciBlocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms'
    Known Build ErrorUse this to report build issues in the .NET Helix tab
    area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
    on Jul 13, 2025
  2. jakobbotsch commented on Jul 14, 2025

    @jakobbotsch
    Member

    cc @dotnet/jit-contrib

  3. added this to the 10.0.0 milestone on Jul 14, 2025
  4. amanasifkhalid commented on Jul 14, 2025

    @amanasifkhalid
    Contributor

    Ah, yet another arm32 failure. @AndyAyersMS could you please get me a JitDump of this? I can take a look from there.

  5. AndyAyersMS commented on Jul 14, 2025

    @AndyAyersMS
    Member

    Sure.

  6. AndyAyersMS commented on Jul 14, 2025

    @AndyAyersMS
    Member
  7. amanasifkhalid commented on Jul 14, 2025

    @amanasifkhalid
    Contributor

    fgUpdateFlowGraph's branch reversal optimization (something I hope to get rid of in .NET 11) isn't sufficiently careful to avoid moving EH region entries:

    Moving BB192 after BB08 to enable reversal
    
    Reversing a conditional jump around an unconditional jump (BB33 -> BB192, BB08 -> BB06)
    
    After reversing the jump:
    
    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
    BBnum  BBid ref try hnd preds           weight    IBC [IL range]   [jump]                              [EH region]        [flags]
    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
    BB01  [0000]  1                             1     100 [000..000)                             (throw )                   i IBC gcsafe idxlen newobj nullcheck
    BB05  [0005]  1  0    BB79                  5.74  574 [000..000)-> BB29(1),BB32(0)           ( cond ) T0                i IBC internal idxlen bwd bwd-target
    BB29  [0041]  1  0    BB05                  5.92  592 [000..000)-> BB06(1)                   (always) T0                i IBC internal idxlen bwd
    BB06  [0006]  2  0    BB29,BB33             5.97  597 [000..000)-> BB194(1)                  (always) T0                i IBC internal idxlen bwd bwd-target
    BB196 [0260]  1  0    BB50                 18.98 1898 [000..000)-> BB50(0.9),BB49(0.1)       ( cond ) T0                i IBC internal gcsafe idxlen bwd
    BB50  [0060]  1  0    BB196                17.08 1708 [000..000)-> BB196(0.9),BB194(0.1)     ( cond ) T0                i IBC internal bwd
    BB49  [0059]  1  0    BB196                 1.90  190 [000..000)-> BB33(1)                   (always) T0                i IBC internal bwd
    BB194 [0258]  2  0    BB06,BB50             7.51  751 [000..000)-> BB33(1)                   (always) T0                IBC internal bwd
    BB33  [0063]  2  0    BB49,BB194            5.63  563 [000..000)-> BB06(0.1),BB192(0.9)      ( cond ) T0                i IBC internal gcsafe idxlen bwd
    BB192 [0256]  1  0    BB33                  6.58  658 [000..000)-> BB80(0.0307),BB79(0.969)  ( cond ) T0    try {       IBC keep internal idxlen bwd
    BB79  [0096]  1  0    BB192                 6.38  638 [000..000)-> BB05(0.9),BB15(0.1)       ( cond ) T0                i IBC internal bwd
    BB80  [0097]  1  0    BB192                 0.20   20 [000..000)-> BB15(1)                   (always) T0                i IBC internal bwd
    BB32  [0040]  1  0    BB05                  0       0 [000..000)                             (throw ) T0    }           i IBC rare internal hascall gcsafe newobj bwd
    
  8. AndyAyersMS commented on Jul 14, 2025

    @AndyAyersMS
    Member

    @amanasifkhalid do you need an SPMI for that or is the dump enough?

  9. amanasifkhalid commented on Jul 14, 2025

    @amanasifkhalid
    Contributor

    @AndyAyersMS I think the dump is enough, thanks for grabbing it. Fix should be pretty targeted.

  10. added a commit that references this issue on Jul 14, 2025
    adc9777
  11. locked and limited conversation to collaborators on Aug 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Known Build ErrorUse this to report build issues in the .NET Helix tabarch-arm32area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIblocking-clean-ciBlocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms'

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions