File tree Expand file tree Collapse file tree 2 files changed +7
-3
lines changed Expand file tree Collapse file tree 2 files changed +7
-3
lines changed Original file line number Diff line number Diff line change @@ -405,11 +405,12 @@ macro_rules! apfloat_fallback {
405
405
} } ;
406
406
}
407
407
408
- #[ cfg( target_arch = "s390x" ) ]
409
408
mod bootstrap {
410
409
// Needed for testing other symbols,
411
410
#[ linkage = "weak" ]
412
411
#[ unsafe( no_mangle) ]
412
+ #[ cfg( f16_enabled) ]
413
+ #[ cfg( target_arch = "s390x" ) ]
413
414
pub extern "C" fn __extendhfsf2 ( a : f16 ) -> f32 {
414
415
compiler_builtins:: float:: extend:: __extendhfsf2 ( a)
415
416
}
Original file line number Diff line number Diff line change @@ -33,13 +33,16 @@ impl Config {
33
33
. map ( |s| s. to_lowercase ( ) . replace ( "_" , "-" ) )
34
34
. collect ( ) ;
35
35
36
+ let target_arch = env:: var ( "CARGO_CFG_TARGET_ARCH" ) . unwrap ( ) ;
37
+ let bootstrapping_f16 = target_arch == "x86" ;
38
+
36
39
Self {
37
40
target_triple,
38
41
manifest_dir : PathBuf :: from ( env:: var ( "CARGO_MANIFEST_DIR" ) . unwrap ( ) ) ,
39
42
out_dir : PathBuf :: from ( env:: var ( "OUT_DIR" ) . unwrap ( ) ) ,
40
43
opt_level : env:: var ( "OPT_LEVEL" ) . unwrap ( ) ,
41
44
cargo_features,
42
- target_arch : env :: var ( "CARGO_CFG_TARGET_ARCH" ) . unwrap ( ) ,
45
+ target_arch,
43
46
target_env : env:: var ( "CARGO_CFG_TARGET_ENV" ) . unwrap ( ) ,
44
47
target_family : env:: var ( "CARGO_CFG_TARGET_FAMILY" ) . ok ( ) ,
45
48
target_os : env:: var ( "CARGO_CFG_TARGET_OS" ) . unwrap ( ) ,
@@ -50,7 +53,7 @@ impl Config {
50
53
// with `RUSTC_BOOTSTRAP=1` (which is required to use the types anyway).
51
54
// reliable_f128: env::var_os("CARGO_CFG_TARGET_HAS_RELIABLE_F128").is_some(),
52
55
// reliable_f16: env::var_os("CARGO_CFG_TARGET_HAS_RELIABLE_F16").is_some(),
53
- reliable_f16 : true ,
56
+ reliable_f16 : !bootstrapping_f16 ,
54
57
reliable_f128 : true ,
55
58
}
56
59
}
You can’t perform that action at this time.
0 commit comments