| ... | @@ -332,13 +332,13 @@ pub fn dataLayout(target: *const std.Target) []const u8 { | ... | @@ -332,13 +332,13 @@ pub fn dataLayout(target: *const std.Target) []const u8 { |
| 332 | .hexagon => "e-m:e-p:32:32:32-a:0-n16:32-i64:64:64-i32:32:32-i16:16:16-i1:8:8-f32:32:32-f64:64:64-v32:32:32-v64:64:64-v512:512:512-v1024:1024:1024-v2048:2048:2048", | 332 | .hexagon => "e-m:e-p:32:32:32-a:0-n16:32-i64:64:64-i32:32:32-i16:16:16-i1:8:8-f32:32:32-f64:64:64-v32:32:32-v64:64:64-v512:512:512-v1024:1024:1024-v2048:2048:2048", |
| 333 | .lanai => "E-m:e-p:32:32-i64:64-a:0:32-n32-S64", | 333 | .lanai => "E-m:e-p:32:32-i64:64-a:0:32-n32-S64", |
| 334 | .aarch64 => if (target.ofmt == .macho) | 334 | .aarch64 => if (target.ofmt == .macho) |
| 335 | if (target.os.tag == .windows) | 335 | if (target.os.tag == .windows or target.os.tag == .uefi) |
| 336 | "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-n32:64-S128-Fn32" | 336 | "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-n32:64-S128-Fn32" |
| 337 | else if (target.abi == .ilp32) | 337 | else if (target.abi == .ilp32) |
| 338 | "e-m:o-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-n32:64-S128-Fn32" | 338 | "e-m:o-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-n32:64-S128-Fn32" |
| 339 | else | 339 | else |
| 340 | "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-n32:64-S128-Fn32" | 340 | "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-n32:64-S128-Fn32" |
| 341 | else if (target.os.tag == .windows) | 341 | else if (target.os.tag == .windows or target.os.tag == .uefi) |
| 342 | "e-m:w-p270:32:32-p271:32:32-p272:64:64-p:64:64-i32:32-i64:64-i128:128-n32:64-S128-Fn32" | 342 | "e-m:w-p270:32:32-p271:32:32-p272:64:64-p:64:64-i32:32-i64:64-i128:128-n32:64-S128-Fn32" |
| 343 | else | 343 | else |
| 344 | "e-m:e-p270:32:32-p271:32:32-p272:64:64-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128-Fn32", | 344 | "e-m:e-p270:32:32-p271:32:32-p272:64:64-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128-Fn32", |
| ... | @@ -353,7 +353,7 @@ pub fn dataLayout(target: *const std.Target) []const u8 { | ... | @@ -353,7 +353,7 @@ pub fn dataLayout(target: *const std.Target) []const u8 { |
| 353 | "E-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64", | 353 | "E-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64", |
| 354 | .thumb => if (target.ofmt == .macho) | 354 | .thumb => if (target.ofmt == .macho) |
| 355 | "e-m:o-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64" | 355 | "e-m:o-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64" |
| 356 | else if (target.os.tag == .windows) | 356 | else if (target.os.tag == .windows or target.os.tag == .uefi) |
| 357 | "e-m:w-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64" | 357 | "e-m:w-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64" |
| 358 | else | 358 | else |
| 359 | "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64", | 359 | "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64", |
| ... | @@ -419,7 +419,7 @@ pub fn dataLayout(target: *const std.Target) []const u8 { | ... | @@ -419,7 +419,7 @@ pub fn dataLayout(target: *const std.Target) []const u8 { |
| 419 | "E-m:l-p1:32:32-i1:8:16-i8:8:16-i64:64-f128:64-v128:64-a:8:16-n32:64" | 419 | "E-m:l-p1:32:32-i1:8:16-i8:8:16-i64:64-f128:64-v128:64-a:8:16-n32:64" |
| 420 | else | 420 | else |
| 421 | "E-m:e-i1:8:16-i8:8:16-i64:64-f128:64-v128:64-a:8:16-n32:64", | 421 | "E-m:e-i1:8:16-i8:8:16-i64:64-f128:64-v128:64-a:8:16-n32:64", |
| 422 | .x86 => if (target.os.tag == .windows) switch (target.abi) { | 422 | .x86 => if (target.os.tag == .windows or target.os.tag == .uefi) switch (target.abi) { |
| 423 | .cygnus => "e-m:x-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:32-n8:16:32-a:0:32-S32", | 423 | .cygnus => "e-m:x-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:32-n8:16:32-a:0:32-S32", |
| 424 | .gnu => if (target.ofmt == .coff) | 424 | .gnu => if (target.ofmt == .coff) |
| 425 | "e-m:x-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:32-n8:16:32-a:0:32-S32" | 425 | "e-m:x-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:32-n8:16:32-a:0:32-S32" |
| ... | @@ -449,7 +449,7 @@ pub fn dataLayout(target: *const std.Target) []const u8 { | ... | @@ -449,7 +449,7 @@ pub fn dataLayout(target: *const std.Target) []const u8 { |
| 449 | "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" | 449 | "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" |
| 450 | else switch (target.abi) { | 450 | else switch (target.abi) { |
| 451 | .gnux32, .muslx32 => "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128", | 451 | .gnux32, .muslx32 => "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128", |
| 452 | else => if (target.os.tag == .windows and target.ofmt == .coff) | 452 | else => if ((target.os.tag == .windows or target.os.tag == .uefi) and target.ofmt == .coff) |
| 453 | "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" | 453 | "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" |
| 454 | else | 454 | else |
| 455 | "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128", | 455 | "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128", |