Uh oh!
There was an error while loading. Please reload this page.
[cDAC] Implement SetJITCompilerFlags for cDAC - #126595
Conversation
There was a problem hiding this comment.
Pull request overview
Implements IXCLRDataModule2.SetJITCompilerFlags for the managed cDAC by wiring it to the Loader contract’s module transient-flag debugger bits, adding the necessary contract surface and tests to validate read/write behavior.
Changes:
- Implement
IXCLRDataModule2.SetJITCompilerFlagsinClrDataModuleby updating module debugger control bits viaILoader. - Extend
ILoader/Loader_1withGetDebuggerInfoBitsandSetDebuggerInfoBits, and document the new contract surface/constants. - Update cDAC test infrastructure to support target-memory writes and add Loader tests for debugger-bit get/set and flag preservation.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| src/native/managed/cdac/Microsoft.Diagnostics.DataContractReader.Legacy/ClrDataModule.cs | Implements SetJITCompilerFlags using Loader debugger-info bits. |
| src/native/managed/cdac/Microsoft.Diagnostics.DataContractReader.Legacy/IXCLRData.cs | Adds managed DebuggerAssemblyControlFlags enum mirroring cordbpriv.h. |
| src/native/managed/cdac/Microsoft.Diagnostics.DataContractReader.Abstractions/Contracts/ILoader.cs | Adds GetDebuggerInfoBits / SetDebuggerInfoBits to the Loader contract. |
| src/native/managed/cdac/Microsoft.Diagnostics.DataContractReader.Contracts/Contracts/Loader_1.cs | Implements debugger-info bit get/set by reading/writing Module::Flags. |
| src/native/managed/cdac/tests/TestPlaceholderTarget.cs | Adds write-capable target support for tests. |
| src/native/managed/cdac/tests/MockDescriptors/MockDescriptors.Loader.cs | Allows initializing module transient flags in mocks. |
| src/native/managed/cdac/tests/LoaderTests.cs | Adds new tests for debugger-info bit behavior. |
| docs/design/datacontracts/Loader.md | Documents new Loader contract methods and constants. |
| src/coreclr/vm/ceeload.h | Notes cDAC Loader contract dependency on debugger-info mask/shift constants. |
| src/coreclr/inc/cordbpriv.h | Adds explicit comment that cDAC depends on flag values. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Tagging subscribers to this area: @steveisok, @tommcdon, @dotnet/dotnet-diag |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
rcj1
commented
Apr 16, 2026
/ba-g #127008 |
Summary
Implement
SetJITCompilerFlagsonIXCLRDataModule2in the cDAC.Changes
SetJITCompilerFlagsimplementation