Don't compile assembly on x86_64 Windows
They've all got the wrong ABI...
This commit is contained in:
parent
94bc9953a1
commit
b42d267065
24
build.rs
24
build.rs
|
@ -4142,16 +4142,20 @@ mod c {
|
|||
sources.extend(&["gcc_personality_v0.c"]);
|
||||
}
|
||||
|
||||
if target_arch == "x86_64" {
|
||||
sources.extend(
|
||||
&[
|
||||
"x86_64/floatdisf.c",
|
||||
"x86_64/floatdixf.c",
|
||||
"x86_64/floatundidf.S",
|
||||
"x86_64/floatundisf.S",
|
||||
"x86_64/floatundixf.S",
|
||||
],
|
||||
);
|
||||
// None of these seem to be used on x86_64 windows, and they've all
|
||||
// got the wrong ABI anyway, so we want to avoid them.
|
||||
if target_os != "windows" {
|
||||
if target_arch == "x86_64" {
|
||||
sources.extend(
|
||||
&[
|
||||
"x86_64/floatdisf.c",
|
||||
"x86_64/floatdixf.c",
|
||||
"x86_64/floatundidf.S",
|
||||
"x86_64/floatundisf.S",
|
||||
"x86_64/floatundixf.S",
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if target_arch == "x86" {
|
||||
|
|
|
@ -113,7 +113,7 @@ intrinsics! {
|
|||
}
|
||||
|
||||
#[use_c_shim_if(all(any(target_arch = "x86", target_arch = "x86_64"),
|
||||
not(target_env = "msvc")))]
|
||||
not(windows)))]
|
||||
#[arm_aeabi_alias = __aeabi_ul2d]
|
||||
pub extern "C" fn __floatundidf(i: u64) -> f64 {
|
||||
int_to_float!(i, u64, f64)
|
||||
|
|
Loading…
Reference in New Issue