@@ -6,7 +6,7 @@ use crate::utils::{
6
6
split_args, walk_dir,
7
7
} ;
8
8
9
- use std:: collections:: { BTreeSet , HashMap } ;
9
+ use std:: collections:: HashMap ;
10
10
use std:: ffi:: OsStr ;
11
11
use std:: fs:: { remove_dir_all, File } ;
12
12
use std:: io:: { BufRead , BufReader } ;
@@ -82,7 +82,7 @@ fn show_usage() {
82
82
struct TestArg {
83
83
build_only : bool ,
84
84
use_system_gcc : bool ,
85
- runners : BTreeSet < String > ,
85
+ runners : Vec < String > ,
86
86
flags : Vec < String > ,
87
87
nb_parts : Option < usize > ,
88
88
current_part : Option < usize > ,
@@ -127,8 +127,8 @@ impl TestArg {
127
127
show_usage ( ) ;
128
128
return Ok ( None ) ;
129
129
}
130
- x if runners. contains_key ( x) => {
131
- test_arg. runners . insert ( x. into ( ) ) ;
130
+ x if runners. contains_key ( x) && !test_arg . runners . iter ( ) . any ( |runner| runner == x ) => {
131
+ test_arg. runners . push ( x. into ( ) ) ;
132
132
}
133
133
arg => {
134
134
if !test_arg. config_info . parse_argument ( arg, & mut args) ? {
@@ -535,7 +535,7 @@ fn asm_tests(env: &Env, args: &TestArg) -> Result<(), String> {
535
535
let rustc_args = & format ! (
536
536
r#"-Zpanic-abort-tests \
537
537
-Zcodegen-backend="{pwd}/target/{channel}/librustc_codegen_gcc.{dylib_ext}" \
538
- --sysroot "{pwd}/{ sysroot_dir}" -Cpanic=abort{extra}"# ,
538
+ --sysroot "{sysroot_dir}" -Cpanic=abort{extra}"# ,
539
539
pwd = std:: env:: current_dir( )
540
540
. map_err( |error| format!( "`current_dir` failed: {:?}" , error) ) ?
541
541
. display( ) ,
@@ -974,11 +974,11 @@ where
974
974
if args. is_using_gcc_master_branch ( ) { "" } else { " -Csymbol-mangling-version=v0" } ;
975
975
976
976
let rustc_args = format ! (
977
- "{} -Zcodegen-backend={} --sysroot {}{ }" ,
978
- env. get( "TEST_FLAGS" ) . unwrap_or( & String :: new( ) ) ,
979
- args. config_info. cg_backend_path,
980
- args. config_info. sysroot_path,
981
- extra,
977
+ "{test_flags } -Zcodegen-backend={backend } --sysroot {sysroot}{extra }" ,
978
+ test_flags = env. get( "TEST_FLAGS" ) . unwrap_or( & String :: new( ) ) ,
979
+ backend = args. config_info. cg_backend_path,
980
+ sysroot = args. config_info. sysroot_path,
981
+ extra = extra ,
982
982
) ;
983
983
984
984
env. get_mut ( "RUSTFLAGS" ) . unwrap ( ) . clear ( ) ;
0 commit comments