@@ -1261,6 +1261,9 @@ supported_targets! {
1261
1261
1262
1262
( "aarch64-unknown-nto-qnx710" , aarch64_unknown_nto_qnx_710) ,
1263
1263
( "x86_64-pc-nto-qnx710" , x86_64_pc_nto_qnx710) ,
1264
+
1265
+ ( "aarch64-unknown-linux-ohos" , aarch64_unknown_linux_ohos) ,
1266
+ ( "armv7-unknown-linux-ohos" , armv7_unknown_linux_ohos) ,
1264
1267
}
1265
1268
1266
1269
/// Cow-Vec-Str: Cow<'static, [Cow<'static, str>]>
@@ -1734,6 +1737,9 @@ pub struct TargetOptions {
1734
1737
1735
1738
/// Whether the target supports XRay instrumentation.
1736
1739
pub supports_xray : bool ,
1740
+
1741
+ /// Forces the use of emulated TLS (__emutls_get_address)
1742
+ pub force_emulated_tls : bool ,
1737
1743
}
1738
1744
1739
1745
/// Add arguments for the given flavor and also for its "twin" flavors
@@ -1954,6 +1960,7 @@ impl Default for TargetOptions {
1954
1960
entry_name : "main" . into ( ) ,
1955
1961
entry_abi : Conv :: C ,
1956
1962
supports_xray : false ,
1963
+ force_emulated_tls : false ,
1957
1964
}
1958
1965
}
1959
1966
}
@@ -2605,6 +2612,7 @@ impl Target {
2605
2612
key ! ( entry_name) ;
2606
2613
key ! ( entry_abi, Conv ) ?;
2607
2614
key ! ( supports_xray, bool ) ;
2615
+ key ! ( force_emulated_tls, bool ) ;
2608
2616
2609
2617
if base. is_builtin {
2610
2618
// This can cause unfortunate ICEs later down the line.
@@ -2859,6 +2867,7 @@ impl ToJson for Target {
2859
2867
target_option_val ! ( entry_name) ;
2860
2868
target_option_val ! ( entry_abi) ;
2861
2869
target_option_val ! ( supports_xray) ;
2870
+ target_option_val ! ( force_emulated_tls) ;
2862
2871
2863
2872
if let Some ( abi) = self . default_adjusted_cabi {
2864
2873
d. insert ( "default-adjusted-cabi" . into ( ) , Abi :: name ( abi) . to_json ( ) ) ;
0 commit comments