diff options
| author | Jacob Young <jacobly0@users.noreply.github.com> | 2023-08-12 19:34:17 -0400 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2023-09-19 09:37:32 -0700 |
| commit | 3506bc61b766528341ceaea27ae44b44227bf901 (patch) | |
| tree | 434d5e3f3d7522f81b719b61d311866928903491 /src/codegen/llvm.zig | |
| parent | cad594372e8c24070ed5e869e2cd83bd09ff359d (diff) | |
| download | zig-3506bc61b766528341ceaea27ae44b44227bf901.tar.gz zig-3506bc61b766528341ceaea27ae44b44227bf901.zip | |
llvm: update data layout computation to LLVM 17
Diffstat (limited to 'src/codegen/llvm.zig')
| -rw-r--r-- | src/codegen/llvm.zig | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/codegen/llvm.zig b/src/codegen/llvm.zig index 9a6d1b2421..8706089a81 100644 --- a/src/codegen/llvm.zig +++ b/src/codegen/llvm.zig @@ -421,8 +421,12 @@ const DataLayoutBuilder = struct { if (idx != size) try writer.print(":{d}", .{idx}); } } - if (self.target.cpu.arch.isArmOrThumb()) - try writer.writeAll("-Fi8"); // for thumb interwork + if (self.target.cpu.arch.isArmOrThumb()) try writer.writeAll("-Fi8") // for thumb interwork + else if (self.target.cpu.arch == .powerpc64 and + self.target.os.tag != .freebsd and self.target.abi != .musl) + try writer.writeAll("-Fi64") + else if (self.target.cpu.arch.isPPC() or self.target.cpu.arch.isPPC64()) + try writer.writeAll("-Fn32"); if (self.target.cpu.arch != .hexagon) { if (self.target.cpu.arch == .arc or self.target.cpu.arch == .s390x) try self.typeAlignment(.integer, 1, 8, 8, false, writer); |
