Skip to content

Use Checked runtime for cDAC dump tests#126899

Merged
max-charlamb merged 2 commits intodotnet:mainfrom
max-charlamb:fix/dump-tests-checked-runtime
Apr 15, 2026
Merged

Use Checked runtime for cDAC dump tests#126899
max-charlamb merged 2 commits intodotnet:mainfrom
max-charlamb:fix/dump-tests-checked-runtime

Conversation

@max-charlamb
Copy link
Copy Markdown
Member

@max-charlamb max-charlamb commented Apr 14, 2026

Note

This PR was created with assistance from GitHub Copilot.

Switch the cDAC dump test builds from Release to Checked runtime configuration (-rc checked) while keeping libs as Release (-lc release). This enables runtime asserts in the CLR, which helps catch issues in the cDAC data descriptors and contract implementations during dump testing.

Changes:

  • Single-leg dump tests: -rc release-rc checked
  • X-plat dump generation: -rc release-rc checked
  • X-plat dump testing: -rc release-rc checked

SOS test stages are unchanged (remain Release).

Switch dump test builds from Release to Checked runtime configuration
(-rc checked) while keeping libs as Release (-lc release). This enables
runtime asserts in the CLR, which helps catch issues in the cDAC data
descriptors and contract implementations during dump testing.

Affects single-leg, xplat dump gen, and xplat dump test stages.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

- ThreadStore.FirstThreadLink: SLink -> T_POINTER (SLink is a
  single-pointer struct; managed code reads the pointer directly)
- Thread.LastThrownObject: GCHandle -> T_POINTER (OBJECTHANDLE is
  a pointer type; managed code reads it as a pointer)
- Array.m_NumComponents: T_POINTER -> T_UINT32 (native type is DWORD)

All three were caught by Debug.Assert in TargetFieldExtensions when
running dump tests with a Checked runtime build.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@dotnet-policy-service
Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @steveisok, @tommcdon, @dotnet/dotnet-diag
See info in area-owners.md if you want to be subscribed.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

Comment thread eng/pipelines/runtime-diagnostics.yml
@max-charlamb
Copy link
Copy Markdown
Member Author

/ba-g test failures unrelated to cDAC.

@max-charlamb max-charlamb merged commit 25e2d7f into dotnet:main Apr 15, 2026
194 of 198 checks passed
@max-charlamb max-charlamb deleted the fix/dump-tests-checked-runtime branch April 15, 2026 20:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants