diff --git a/lib/std/Target.zig b/lib/std/Target.zig index b9ba041ca4..124f186c78 100644 --- a/lib/std/Target.zig +++ b/lib/std/Target.zig @@ -3752,7 +3752,7 @@ pub fn cCallingConvention(target: *const Target) ?std.builtin.CallingConvention .riscv32, .riscv32be => .{ .riscv32_ilp32 = .{} }, .sparc64 => .{ .sparc64_sysv = .{} }, .sparc => .{ .sparc_sysv = .{} }, - .powerpc64 => if (target.abi.isGnu()) + .powerpc64 => if (target.os.tag == .ps3 or target.abi.isGnu()) .{ .powerpc64_elf = .{} } else .{ .powerpc64_elf_v2 = .{} }, diff --git a/src/target.zig b/src/target.zig index 73c60a9d9b..71ce76dd35 100644 --- a/src/target.zig +++ b/src/target.zig @@ -695,7 +695,8 @@ pub fn llvmMachineAbi(target: *const std.Target) ?[:0]const u8 { .gnuabin32, .muslabin32 => "n32", else => "n64", }, - .powerpc64, .powerpc64le => if (target.os.tag == .ps3) "elfv1" else "elfv2", + .powerpc64 => if (target.os.tag == .ps3) "elfv1" else "elfv2", + .powerpc64le => "elfv2", .riscv64, .riscv64be => if (target.cpu.has(.riscv, .e)) "lp64e" else if (target.cpu.has(.riscv, .d))