Skip to content

Commit

Permalink
Also blacklist powerpc-unknown-linux-musl.
Browse files Browse the repository at this point in the history
  • Loading branch information
anyska committed Feb 24, 2020
1 parent b030280 commit 162d727
Showing 1 changed file with 12 additions and 9 deletions.
21 changes: 12 additions & 9 deletions src/librustc/ty/layout.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2541,14 +2541,15 @@ where
};

let target = &cx.tcx().sess.target.target;
let target_env_gnu_like = matches!(&target.target_env[..], "gnu" | "musl");
let win_x64_gnu =
target.target_os == "windows" && target.arch == "x86_64" && target.target_env == "gnu";
let linux_s390x =
target.target_os == "linux" && target.arch == "s390x" && target.target_env == "gnu";
let linux_sparc64 =
target.target_os == "linux" && target.arch == "sparc64" && target.target_env == "gnu";
let linux_powerpc =
target.target_os == "linux" && target.arch == "powerpc" && target.target_env == "gnu";
let linux_s390x_gnu_like =
target.target_os == "linux" && target.arch == "s390x" && target_env_gnu_like;
let linux_sparc64_gnu_like =
target.target_os == "linux" && target.arch == "sparc64" && target_env_gnu_like;
let linux_powerpc_gnu_like =
target.target_os == "linux" && target.arch == "powerpc" && target_env_gnu_like;
let rust_abi = match sig.abi {
RustIntrinsic | PlatformIntrinsic | Rust | RustCall => true,
_ => false,
Expand Down Expand Up @@ -2619,11 +2620,13 @@ where
if arg.layout.is_zst() {
// For some forsaken reason, x86_64-pc-windows-gnu
// doesn't ignore zero-sized struct arguments.
// The same is true for s390x-unknown-linux-gnu,
// sparc64-unknown-linux-gnu and powerpc-unknown-linux-gnu.
// The same is true for {s390x,sparc64,powerpc}-unknown-linux-{gnu,musl}.
if is_return
|| rust_abi
|| (!win_x64_gnu && !linux_s390x && !linux_sparc64 && !linux_powerpc)
|| (!win_x64_gnu
&& !linux_s390x_gnu_like
&& !linux_sparc64_gnu_like
&& !linux_powerpc_gnu_like)
{
arg.mode = PassMode::Ignore;
}
Expand Down

0 comments on commit 162d727

Please sign in to comment.