Commit 9939b116bf

Alex Rønne Petersen <alex@alexrp.com>
2024-06-23 17:32:58
std.Target: Remove the `gnuf64` ABI specifier.
This was used for LoongArch64, where: * `gnuf64` -> `ilp32d` / `lp64d` (full hard float) * `gnuf32` -> `ilp32f` / `lp64f` (hard float for `f32` only) * `gnusf` -> `ilp32` / `lp64` (soft float) But Loongson eventually settled on just `gnu` for the first case since that's what most people will actually be targeting outside embedded scenarios. The `gnuf32` and `gnusf` specifiers remain in use.
1 parent b7e48c6
Changed files (4)
lib
compiler
aro
std
src
codegen
lib/compiler/aro/aro/target.zig
@@ -737,7 +737,6 @@ pub fn toLLVMTriple(target: std.Target, buf: []u8) []const u8 {
         .gnueabi => "gnueabi",
         .gnueabihf => "gnueabihf",
         .gnuf32 => "gnuf32",
-        .gnuf64 => "gnuf64",
         .gnusf => "gnusf",
         .gnux32 => "gnux32",
         .gnuilp32 => "gnuilp32",
lib/std/zig/LibCDirs.zig
@@ -232,7 +232,6 @@ fn libCGenericName(target: std.Target) [:0]const u8 {
         .gnueabi,
         .gnueabihf,
         .gnuf32,
-        .gnuf64,
         .gnusf,
         .gnux32,
         .gnuilp32,
lib/std/Target.zig
@@ -628,7 +628,6 @@ pub const Abi = enum {
     gnueabi,
     gnueabihf,
     gnuf32,
-    gnuf64,
     gnusf,
     gnux32,
     gnuilp32,
src/codegen/llvm.zig
@@ -177,7 +177,6 @@ pub fn targetTriple(allocator: Allocator, target: std.Target) ![]const u8 {
         .gnueabi => "gnueabi",
         .gnueabihf => "gnueabihf",
         .gnuf32 => "gnuf32",
-        .gnuf64 => "gnuf64",
         .gnusf => "gnusf",
         .gnux32 => "gnux32",
         .gnuilp32 => "gnuilp32",