aboutsummaryrefslogtreecommitdiff
path: root/src/codegen
diff options
context:
space:
mode:
authormlugg <mlugg@mlugg.co.uk>2024-10-15 22:02:12 +0100
committermlugg <mlugg@mlugg.co.uk>2024-10-19 19:21:32 +0100
commit3ef8bb6354a4ffff18843c574b596b32d9b675e1 (patch)
tree300182be5065d903c12f9dddea3a9edfa080fa3c /src/codegen
parent1d1e8e110582580b1a98aacfacf7a3358e56bd38 (diff)
downloadzig-3ef8bb6354a4ffff18843c574b596b32d9b675e1.tar.gz
zig-3ef8bb6354a4ffff18843c574b596b32d9b675e1.zip
llvn: fix incorrect mips64 callconv handling
Diffstat (limited to 'src/codegen')
-rw-r--r--src/codegen/llvm.zig6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/codegen/llvm.zig b/src/codegen/llvm.zig
index 8e8b8f017e..66749fe3d4 100644
--- a/src/codegen/llvm.zig
+++ b/src/codegen/llvm.zig
@@ -11865,7 +11865,7 @@ fn firstParamSRet(fn_info: InternPool.Key.FuncType, zcu: *Zcu, target: std.Targe
.byval => false,
},
.riscv64_lp64, .riscv32_ilp32 => riscv_c_abi.classifyType(return_type, zcu) == .memory,
- .mips64_n64, .mips64_n32, .mips_o32 => switch (mips_c_abi.classifyType(return_type, zcu, .ret)) {
+ .mips_o32 => switch (mips_c_abi.classifyType(return_type, zcu, .ret)) {
.memory, .i32_array => true,
.byval => false,
},
@@ -11914,7 +11914,7 @@ fn lowerFnRetTy(o: *Object, fn_info: InternPool.Key.FuncType) Allocator.Error!Bu
.i32_array => |len| return if (len == 1) .i32 else .void,
.byval => return o.lowerType(return_type),
},
- .mips64_n64, .mips64_n32, .mips_o32 => switch (mips_c_abi.classifyType(return_type, zcu, .ret)) {
+ .mips_o32 => switch (mips_c_abi.classifyType(return_type, zcu, .ret)) {
.memory, .i32_array => return .void,
.byval => return o.lowerType(return_type),
},
@@ -12171,7 +12171,7 @@ const ParamTypeIterator = struct {
.i64_array => |size| return Lowering{ .i64_array = size },
}
},
- .mips64_n64, .mips64_n32, .mips_o32 => {
+ .mips_o32 => {
it.zig_index += 1;
it.llvm_index += 1;
switch (mips_c_abi.classifyType(ty, zcu, .arg)) {