diff options
| author | bors <bors@rust-lang.org> | 2023-08-15 11:59:02 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2023-08-15 11:59:02 +0000 |
| commit | c1699a79a603faa8b522a4b51553b6781913a50e (patch) | |
| tree | b995e14be8b37e01b020f091f40a10138514801b /compiler/rustc_codegen_llvm/src/asm.rs | |
| parent | fd9525adb072543cbd9389938c1632068aa8eb9c (diff) | |
| parent | a3ab31c0f957998cc16e1760e965c85a4923950b (diff) | |
| download | rust-c1699a79a603faa8b522a4b51553b6781913a50e.tar.gz rust-c1699a79a603faa8b522a4b51553b6781913a50e.zip | |
Auto merge of #114467 - Amanieu:asm-unstable-features, r=davidtwco
Use `unstable_target_features` when checking inline assembly This is necessary to properly validate register classes even when the relevant target feature name is still unstable.
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/asm.rs')
| -rw-r--r-- | compiler/rustc_codegen_llvm/src/asm.rs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/compiler/rustc_codegen_llvm/src/asm.rs b/compiler/rustc_codegen_llvm/src/asm.rs index ca9fd76a997..1323261ae92 100644 --- a/compiler/rustc_codegen_llvm/src/asm.rs +++ b/compiler/rustc_codegen_llvm/src/asm.rs @@ -44,9 +44,10 @@ impl<'ll, 'tcx> AsmBuilderMethods<'tcx> for Builder<'_, 'll, 'tcx> { let is_target_supported = |reg_class: InlineAsmRegClass| { for &(_, feature) in reg_class.supported_types(asm_arch) { if let Some(feature) = feature { - let codegen_fn_attrs = self.tcx.codegen_fn_attrs(instance.def_id()); - if self.tcx.sess.target_features.contains(&feature) - || codegen_fn_attrs.target_features.contains(&feature) + if self + .tcx + .asm_target_features(instance.def_id()) + .contains(&feature) { return true; } |
