Skip to content

Commit 2c78a71

Browse files
committed
target declaration refactor: update spirv-val and spirv-opt to new target decl
1 parent 439299a commit 2c78a71

File tree

1 file changed

+5
-6
lines changed
  • crates/rustc_codegen_spirv/src

1 file changed

+5
-6
lines changed

crates/rustc_codegen_spirv/src/link.rs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
use crate::maybe_pqp_cg_ssa as rustc_codegen_ssa;
33

44
use crate::codegen_cx::{CodegenArgs, SpirvMetadata};
5+
use crate::target::{SpirvTarget, SpirvTargetVariant};
56
use crate::{SpirvCodegenBackend, SpirvModuleBuffer, linker};
67
use ar::{Archive, GnuBuilder, Header};
78
use rspirv::binary::Assemble;
@@ -24,14 +25,12 @@ use rustc_session::config::{
2425
};
2526
use rustc_session::output::{check_file_is_writeable, invalid_output_for_target, out_filename};
2627
use rustc_span::Symbol;
27-
use spirv_tools::TargetEnv;
2828
use std::collections::BTreeMap;
2929
use std::ffi::{CString, OsStr};
3030
use std::fs::File;
3131
use std::io::{BufWriter, Read};
3232
use std::iter;
3333
use std::path::{Path, PathBuf};
34-
use std::str::FromStr;
3534
use std::sync::Arc;
3635

3736
pub fn link(
@@ -338,8 +337,8 @@ fn do_spirv_opt(
338337
opt::{self, Optimizer},
339338
};
340339

341-
let target_env = TargetEnv::from_str(sess.target.options.env.desc()).ok();
342-
let mut optimizer = opt::create(target_env);
340+
let target = SpirvTarget::parse_env(sess.target.options.env.desc()).unwrap();
341+
let mut optimizer = opt::create(Some(target.to_spirv_tools()));
343342

344343
match sess.opts.optimize {
345344
OptLevel::No => {}
@@ -401,8 +400,8 @@ fn do_spirv_val(
401400
) {
402401
use spirv_tools::val::{self, Validator};
403402

404-
let target_env = TargetEnv::from_str(sess.target.options.env.desc()).ok();
405-
let validator = val::create(target_env);
403+
let target = SpirvTarget::parse_env(sess.target.options.env.desc()).unwrap();
404+
let validator = val::create(Some(target.to_spirv_tools()));
406405

407406
if let Err(e) = validator.validate(spv_binary, Some(options)) {
408407
let mut err = sess.dcx().struct_err(e.to_string());

0 commit comments

Comments
 (0)