Part of #611. Difficulty: high. Audit baseline: master 3950416e (2026-09-12).
Current evidence
Windows GNU triples remain in llvm/src/codegen/target.rs, with driver/backend paths in src/cli.rs and MinGW toolchain/package settings in x.py, .cargo/config.toml and workflows. The requested next-release end state is MSVC-only Windows support.
Scope
Perform the final bounded retirement after the migration tracker gates pass: remove Windows GNU target registrations/aliases, linker/startup discovery, Windows-specific GNU Cargo configuration, obsolete release inputs and CI provisioning. Reject retired triples with a clear replacement message. Update retained tests to equivalent MSVC coverage before deleting obsolete GNU-only harness code.
Completion criteria
The supported Windows target list contains MSVC x64/ARM64 only; old Windows GNU commands fail with migration guidance. No active Windows build, package or execution job installs/requires MinGW, GCC, GNU Rust or its runtimes. All meaningful case/ABI behavior remains covered. Linux GNU, other non-Windows GNU targets, Linux LoongArch64 and unrelated inline assembly remain intact. Existing historical issues/PRs and user-owned mirror.yml are not rewritten or removed. Review documentation via #401 and the tracker.
Dependencies and boundaries
Final step after #625, #621, #624, #623, #615, #616, #617, #618, #619, #614, #620. This supersedes the earlier retain-GNU restriction in #498 only at this gated cutover; it is not authorization to remove support in prerequisite patches.
Part of #611. Difficulty: high. Audit baseline: master
3950416e(2026-09-12).Current evidence
Windows GNU triples remain in llvm/src/codegen/target.rs, with driver/backend paths in src/cli.rs and MinGW toolchain/package settings in x.py, .cargo/config.toml and workflows. The requested next-release end state is MSVC-only Windows support.
Scope
Perform the final bounded retirement after the migration tracker gates pass: remove Windows GNU target registrations/aliases, linker/startup discovery, Windows-specific GNU Cargo configuration, obsolete release inputs and CI provisioning. Reject retired triples with a clear replacement message. Update retained tests to equivalent MSVC coverage before deleting obsolete GNU-only harness code.
Completion criteria
The supported Windows target list contains MSVC x64/ARM64 only; old Windows GNU commands fail with migration guidance. No active Windows build, package or execution job installs/requires MinGW, GCC, GNU Rust or its runtimes. All meaningful case/ABI behavior remains covered. Linux GNU, other non-Windows GNU targets, Linux LoongArch64 and unrelated inline assembly remain intact. Existing historical issues/PRs and user-owned mirror.yml are not rewritten or removed. Review documentation via #401 and the tracker.
Dependencies and boundaries
Final step after #625, #621, #624, #623, #615, #616, #617, #618, #619, #614, #620. This supersedes the earlier retain-GNU restriction in #498 only at this gated cutover; it is not authorization to remove support in prerequisite patches.