-
Couldn't load subscription status.
- Fork 5.2k
Fix runtime build when tiered compilation is disabled #119355
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix runtime build when tiered compilation is disabled #119355
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR fixes runtime build errors that occur when tiered compilation is disabled by properly wrapping tiered compilation-related code with FEATURE_TIERED_COMPILATION guards. The changes ensure that code referencing tiered compilation stubs and data structures is only compiled when the feature is enabled.
Key Changes
- Added conditional compilation guards around call counting stub definitions and references
- Fixed incorrect feature flags for on-stack replacement code sections
- Protected tiered compilation ETW event tracing code
Reviewed Changes
Copilot reviewed 17 out of 17 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/coreclr/vm/riscv64/asmhelpers.S | Fixed feature guards for patchpoint stubs |
| src/coreclr/vm/riscv64/asmconstants.h | Added guards around call counting stub constants |
| src/coreclr/vm/loongarch64/thunktemplates.S | Protected call counting stub template |
| src/coreclr/vm/loongarch64/asmhelpers.S | Fixed feature guards for patchpoint stubs |
| src/coreclr/vm/loongarch64/asmconstants.h | Added guards around call counting stub constants |
| src/coreclr/vm/i386/thunktemplates.S | Protected call counting stub template |
| src/coreclr/vm/i386/asmconstants.h | Added guards around call counting stub constants |
| src/coreclr/vm/eventtrace.cpp | Protected tiered compilation ETW events |
| src/coreclr/vm/arm64/thunktemplates.S | Protected call counting stub templates |
| src/coreclr/vm/arm64/asmhelpers.S | Fixed feature guards for patchpoint stubs |
| src/coreclr/vm/arm64/asmconstants.h | Added guards around call counting stub constants |
| src/coreclr/vm/arm/asmconstants.h | Added guards around call counting stub constants |
| src/coreclr/vm/amd64/thunktemplates.S | Protected call counting stub template |
| src/coreclr/vm/amd64/asmconstants.h | Added guards around call counting stub constants |
| src/coreclr/inc/vptr_list.h | Protected call counting stub manager declaration |
| src/coreclr/inc/dacvars.h | Protected call counting stub manager DAC variable |
| src/coreclr/debug/daccess/dacdbiimpl.cpp | Fixed assignment to boolean pointer |
|
Tagging subscribers to this area: @mangod9 |
|
/azp run runtime-extra-platforms |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run runtime-extra-platforms |
This comment was marked as outdated.
This comment was marked as outdated.
|
/azp run runtime-extra-platforms |
|
Azure Pipelines successfully started running 1 pipeline(s). |
Co-authored-by: Aaron Robinson <[email protected]>
Co-authored-by: Aaron Robinson <[email protected]>
Co-authored-by: Aaron Robinson <[email protected]>
Co-authored-by: Aaron Robinson <[email protected]>
Co-authored-by: Aaron Robinson <[email protected]>
Co-authored-by: Aaron Robinson <[email protected]>
Co-authored-by: Aaron Robinson <[email protected]>
Co-authored-by: Aaron Robinson <[email protected]>
Co-authored-by: Aaron Robinson <[email protected]>
|
/azp run runtime-extra-platforms |
|
Azure Pipelines successfully started running 1 pipeline(s). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. I'd like to see #119355 (comment) applied before merge.
…tlarmilos/runtime into improvement/clr-interp-build-features
Description
This PR ensures that tiered compilation–related logic is compiled only when FEATURE_TIERED_COMPILATION is enabled. Several components like DAC variables, vtable pointer lists, assembly constants, thunk templates, and event tracing unconditionally referenced these stubs. On builds without tiered compilation, this resulted in runtime build errors.
This change fixes CoreCLR builds for Apple mobile.