Skip to content

Commit b1affb9

Browse files
committed
Move rustc_codegen_ssa target features to rustc_target
1 parent e1f039f commit b1affb9

File tree

2 files changed

+6
-7
lines changed

2 files changed

+6
-7
lines changed

src/gcc_util.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,10 @@
22
use gccjit::Context;
33
use smallvec::{smallvec, SmallVec};
44

5-
use rustc_codegen_ssa::target_features::{
6-
supported_target_features, tied_target_features, RUSTC_SPECIFIC_FEATURES,
7-
};
85
use rustc_data_structures::fx::FxHashMap;
96
use rustc_middle::bug;
107
use rustc_session::Session;
8+
use rustc_target::target_features::RUSTC_SPECIFIC_FEATURES;
119

1210
use crate::errors::{PossibleFeature, TargetFeatureDisableOrEnable, UnknownCTargetFeature, UnknownCTargetFeaturePrefix};
1311

@@ -44,7 +42,7 @@ pub(crate) fn global_gcc_features(sess: &Session, diagnostics: bool) -> Vec<Stri
4442
);
4543

4644
// -Ctarget-features
47-
let supported_features = supported_target_features(sess);
45+
let supported_features = sess.target.supported_target_features();
4846
let mut featsmap = FxHashMap::default();
4947
let feats = sess.opts.cg.target_feature
5048
.split(',')
@@ -187,7 +185,7 @@ pub fn to_gcc_features<'a>(sess: &Session, s: &'a str) -> SmallVec<[&'a str; 2]>
187185
// Given a map from target_features to whether they are enabled or disabled,
188186
// ensure only valid combinations are allowed.
189187
pub fn check_tied_features(sess: &Session, features: &FxHashMap<&str, bool>) -> Option<&'static [&'static str]> {
190-
for tied in tied_target_features(sess) {
188+
for tied in sess.target.tied_target_features() {
191189
// Tied features must be set to the same value, or not set at all
192190
let mut tied_iter = tied.iter();
193191
let enabled = features.get(tied_iter.next().unwrap());

src/lib.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,6 @@ use rustc_codegen_ssa::{CodegenResults, CompiledModule, ModuleCodegen};
9797
use rustc_codegen_ssa::base::codegen_crate;
9898
use rustc_codegen_ssa::back::write::{CodegenContext, FatLtoInput, ModuleConfig, TargetMachineFactoryFn};
9999
use rustc_codegen_ssa::back::lto::{LtoModuleCodegen, SerializedModule, ThinModule};
100-
use rustc_codegen_ssa::target_features::supported_target_features;
101100
use rustc_data_structures::fx::FxIndexMap;
102101
use rustc_data_structures::sync::IntoDynSyncSend;
103102
use rustc_codegen_ssa::traits::{CodegenBackend, ExtraBackendMethods, ThinBufferMethods, WriteBackendMethods};
@@ -397,7 +396,9 @@ fn to_gcc_opt_level(optlevel: Option<OptLevel>) -> OptimizationLevel {
397396
}
398397

399398
pub fn target_features(sess: &Session, allow_unstable: bool, target_info: &LockedTargetInfo) -> Vec<Symbol> {
400-
supported_target_features(sess)
399+
sess
400+
.target
401+
.supported_target_features()
401402
.iter()
402403
.filter_map(
403404
|&(feature, gate)| {

0 commit comments

Comments
 (0)