Repository navigation
Exclude mixed-mode TLS tests from crossgen/ReadyToRun testing - #136266
Conversation
|
Azure Pipelines: Successfully started running 3 pipeline(s). 13 pipeline(s) were filtered out due to trigger conditions. There may be pipelines that require an authorized user to comment /azp run to run. |
Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
|
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch |
|
@jkoritzinsky, I plan to send a small follow-up after this merges. With this PR applied on Windows x64, it still fails the ilasm round trip, on The follow-up will give |
|
@copilot looks like |
…rage Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
Addressed in 2c8c996. Moved both C++/CLI tests and their native components into The targeted Linux x64 Checked build and |
|
I applied PR head
On main without the PR, on the same machine, |
<!-- --> Fixes #136264. The `B03689Native.dll` and `B07847Native.dll` C++/CLI helpers are mixed-mode assemblies that Crossgen2 explicitly rejects. Add `<CrossGenTest>false</CrossGenTest>` and `<R2RIncompatible>true</R2RIncompatible>` to `b03689.csproj` and `b07847.csproj`, matching the related mixed-mode TLS tests updated in #136266. This prevents unsupported ReadyToRun compilation and skips execution in both ordinary and composite R2R runs. Ordinary JIT coverage remains enabled, and existing compatibility metadata and test assertions are unchanged. This does not change Crossgen2 support. ### Validation - **Passed:** MSBuild evaluation of both actual projects for Windows x64 and arm64 Checked, plus complete batch and Bash wrapper generation using `FetchExternalProperties,GenerateBatchExecutionScript,GenerateBashExecutionScript`. All four configurations remain `BuildAndRun`, with `_WillCLRTestProjectBuild=true` and `GenerateRunScript=true`. - **Passed:** 16 generated Bash wrapper/control-flow checks using a probe launcher. Ordinary and composite R2R skip successfully before launch; ordinary JIT, including `CompositeBuildMode` alone without `RunCrossGen2`, reaches the probe launcher. These checks did **not** execute the Windows C++/CLI test assertions. - **Passed:** Inspection of the generated Windows batch wrappers confirms the R2R skip precedes the unchanged `corerun.exe` launch. Structural XML comparison confirms all pre-existing project settings and references are preserved. `git diff --check` passed. - **Not run:** Windows binaries were not built or executed on the macOS ARM64 host. Resolves #136264 > [!NOTE] > This PR description was generated with GitHub Copilot. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Crossgen2 rejects the managed C++ dependencies used by these TLS tests.
TestTLSWithLoadedDlls,MutualRecurThd-TLS, andTest-TLS, covering the issue and its comments.CrossGenTest=falseandR2RIncompatible=trueon all three projects. Normal JIT coverage remains enabled.