| ... | @@ -421,8 +421,12 @@ const DataLayoutBuilder = struct { | ... | @@ -421,8 +421,12 @@ const DataLayoutBuilder = struct { |
| 421 | if (idx != size) try writer.print(":{d}", .{idx}); | 421 | if (idx != size) try writer.print(":{d}", .{idx}); |
| 422 | } | 422 | } |
| 423 | } | 423 | } |
| 424 | if (self.target.cpu.arch.isArmOrThumb()) | 424 | if (self.target.cpu.arch.isArmOrThumb()) try writer.writeAll("-Fi8") // for thumb interwork |
| 425 | try writer.writeAll("-Fi8"); // for thumb interwork | 425 | else if (self.target.cpu.arch == .powerpc64 and |
| | 426 | self.target.os.tag != .freebsd and self.target.abi != .musl) |
| | 427 | try writer.writeAll("-Fi64") |
| | 428 | else if (self.target.cpu.arch.isPPC() or self.target.cpu.arch.isPPC64()) |
| | 429 | try writer.writeAll("-Fn32"); |
| 426 | if (self.target.cpu.arch != .hexagon) { | 430 | if (self.target.cpu.arch != .hexagon) { |
| 427 | if (self.target.cpu.arch == .arc or self.target.cpu.arch == .s390x) | 431 | if (self.target.cpu.arch == .arc or self.target.cpu.arch == .s390x) |
| 428 | try self.typeAlignment(.integer, 1, 8, 8, false, writer); | 432 | try self.typeAlignment(.integer, 1, 8, 8, false, writer); |