Skip to content

release blocker: test_gap_gc_alloc_point_no_move compile does not terminate #8913

Description

@proggeramlug

Release evidence

One fixture deterministically consumes multiple Full CI jobs until their hard limits: test-files/test_gap_gc_alloc_point_no_move.ts.

Three independent consumers identify it:

The candidate tree's round-robin selection confirms test 38 in both shards is test_gap_gc_alloc_point_no_move. The empty compile log and live perry process place the stall inside compilation, before an error is reported.

The candidate already contains the bounded TailCallElim alloca walk from #8894, so this is a remaining compile-time pathology.

Reproduction

cargo build --release
time target/release/perry \
  test-files/test_gap_gc_alloc_point_no_move.ts \
  -o /tmp/perry-gap-gc-alloc-point

./run_parity_tests.sh --filter test_gap_gc_alloc_point_no_move

Profile compiler passes during the isolated command; do not diagnose this by repeatedly running the entire Full CI matrix.

Required fix

Find and bound the compiler phase that scales pathologically on this fixture while preserving the fixture's allocation-point/no-move assertions. Add pass timing or a focused regression guard so a future unbounded walk fails close to the source.

Acceptance criteria

  • The isolated compile completes reliably and well below the 110-minute shard limit on an ubuntu-latest-class runner.
  • The fixture runs and passes; it is not skipped, weakened, or allowlisted.
  • Full-mode gap shard 1 and parity shard 10 complete and upload reports.
  • compile-smoke completes rather than reaching six hours.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugConfirmed defect or regressionparityCompatibility gap with Node.js, ECMAScript, or the supported ecosystemperformanceRuntime, compile-time, build-size, or memory performancereleaseRelease tracking issuesrustPull requests that update rust code

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions