rustc_codegen_llvm: handle sm_101* features being an alias - #160696
rustc_codegen_llvm: handle sm_101* features being an alias#160696durin42 wants to merge 1 commit into
Conversation
|
r? @folkertdev rustbot has assigned @folkertdev. Use Why was this reviewer chosen?The reviewer was selected based on:
|
|
cc target maintainers @kjetilkjeka @kulst |
This comment has been minimized.
This comment has been minimized.
|
tbh it would be easier to review if you just gate it on >= LLVM 24 |
LLVM 24 moved sm_101{,a,f} features to just be an alias for the matching
sm_110 feature. Even though the breaking change in LLVM didn't introduce
the 110 flavors, they appear to not exist in older LLVMs so we just gate
on LLVM 24.
62a47c4 to
1bd2075
Compare
Yep. I was misled by the shape of the diff I guess. Fixed. |
|
Thank you for bringing this up! IIUC LLVM started to model the compatibility of compute capabilities as subtarget features. Previously those were subtarget features, too, but were not implied by compatible ones (for example However, the same LLVM patch also removed Just out of curiosity, did you encounter this bug in this way, or did you manually enable the Rust target feature |
|
We've got CI running on buildkite which caught this shortly after the LLVM change landed. |
|
@bors r+ rollup |
…name, r=folkertdev
rustc_codegen_llvm: handle sm_101* features being an alias
LLVM 24 [moved sm_101{,a,f} features](llvm/llvm-project#214335) to just be an alias for the matching sm_110 feature. Since the sm_110 feature already exists, we can do the remapping unconditionally rather than gating it on LLVM 24.
@rustbot label: +llvm-main
…name, r=folkertdev
rustc_codegen_llvm: handle sm_101* features being an alias
LLVM 24 [moved sm_101{,a,f} features](llvm/llvm-project#214335) to just be an alias for the matching sm_110 feature. Since the sm_110 feature already exists, we can do the remapping unconditionally rather than gating it on LLVM 24.
@rustbot label: +llvm-main
…uwer Rollup of 28 pull requests Successful merges: - #159784 (Hint that memchr returns an in-bounds index) - #160673 (Improve `canonical_param_env_cache`) - #150885 (Revive L4Re target) - #159643 (Add support for splatted function pointers) - #160433 (delegation: add support for wrapping of the return value with `From::from`) - #160530 (refactor handling of target features in Session) - #160606 (bootstrap: Store and use an explicit CheckKind in `check::Rustc`) - #160628 (fix ICE in `suggest_add_reference_to_arg` for non-callable items) - #160683 (Add regression test for unknown feaeture name reported with other errors) - #157641 (Do not promote extern statics) - #158904 (Fix FutureDropPoll shim for by-move async closures) - #159816 (added note/help about iterator invalidation when mutating a collection inside a for loop) - #160103 (Add regression test for GAT bound mismatched type error) - #160335 (dlopen offload) - #160445 (codegen: classify localized MSVC linker progress as linker_info) - #160499 (rustc_resolve: move diagnostic attribute linting to attr parsing) - #160504 (cleanup borrowck, improve c-variadic handling) - #160577 (expand: Feature gate AST-based attribute macros on expressions and statements) - #160587 (Add regression test for associated type outlives bound at call site) - #160625 (platform-support/netbsd.md: No longer mention 8.x, due to EoL.) - #160633 (delegation: fix determining wrong `FnKind` when delegation is inside const arg) - #160636 (derive(Diagnostic): link to proper docs) - #160644 (Clean up some manual debug impls) - #160649 (move naked function ui tests) - #160672 (Improve `MaybeLiveLocals`) - #160693 (Add branch config for perf. unrolling in bors) - #160696 (rustc_codegen_llvm: handle sm_101* features being an alias) - #160706 (renovate: clarify that vulnerability PRs are opened automatically)
LLVM 24 moved sm_101{,a,f} features to just be an alias for the matching sm_110 feature. Since the sm_110 feature already exists, we can do the remapping unconditionally rather than gating it on LLVM 24.
An LLM processed the build failure to identify the breaking change. From there the fix was obvious and performed by hand.
@rustbot label: +llvm-main