Commit 9f1fb45201

Alex Rønne Petersen <alex@alexrp.com>
2024-08-12 09:02:46
llvm: Move some OS selection prongs for clarity.
This makes it clearer which OSs are not known to or supported by LLVM at all vs the ones where we're intentionally passing choosing "unknown".
1 parent 8af4d65
Changed files (1)
src
codegen
src/codegen/llvm.zig
@@ -110,7 +110,7 @@ pub fn targetTriple(allocator: Allocator, target: std.Target) ![]const u8 {
         .netbsd => "netbsd",
         .openbsd => "openbsd",
         .solaris, .illumos => "solaris",
-        .windows => "windows",
+        .windows, .uefi => "windows",
         .zos => "zos",
         .haiku => "haiku",
         .rtems => "rtems",
@@ -128,7 +128,6 @@ pub fn targetTriple(allocator: Allocator, target: std.Target) ![]const u8 {
         .hurd => "hurd",
         .wasi => "wasi",
         .emscripten => "emscripten",
-        .uefi => "windows",
         .macos => "macosx",
         .ios => "ios",
         .tvos => "tvos",
@@ -205,14 +204,7 @@ pub fn targetTriple(allocator: Allocator, target: std.Target) ![]const u8 {
 
 pub fn targetOs(os_tag: std.Target.Os.Tag) llvm.OSType {
     return switch (os_tag) {
-        .freestanding,
-        .other,
-        .opencl,
-        .opengl,
-        .plan9,
-        .contiki,
-        => .UnknownOS,
-
+        .freestanding => .UnknownOS,
         .windows, .uefi => .Win32,
         .dragonfly => .DragonFly,
         .freebsd => .FreeBSD,
@@ -231,6 +223,7 @@ pub fn targetOs(os_tag: std.Target.Os.Tag) llvm.OSType {
         .cuda => .CUDA,
         .nvcl => .NVCL,
         .amdhsa => .AMDHSA,
+        .opencl => .UnknownOS, // https://llvm.org/docs/SPIRVUsage.html#target-triples
         .ps4 => .PS4,
         .ps5 => .PS5,
         .elfiamcu => .ELFIAMCU,
@@ -247,6 +240,12 @@ pub fn targetOs(os_tag: std.Target.Os.Tag) llvm.OSType {
         .shadermodel => .ShaderModel,
         .vulkan => .Vulkan,
         .serenity => .Serenity,
+
+        .opengl,
+        .plan9,
+        .contiki,
+        .other,
+        => .UnknownOS,
     };
 }