From a446101677e556c54a1633c430cb1611b2cdd5fe Mon Sep 17 00:00:00 2001 From: Jacob Young Date: Sat, 18 Jan 2025 01:56:36 -0500 Subject: [PATCH] x86_64: enable struct field reordering The blocker for enabling this feature was my need to debug the emitted assembly without debug info and having to manually inspect memory to determine struct contents. However, we now have debug info! (lldb) v -L foo bar 0x00007fffffffda20: (repro.repro.Foo) foo = { 0x00007fffffffda24: .x = 12 0x00007fffffffda20: .y = 34 } 0x00007fffffffda28: (repro.repro.Bar) bar = { 0x00007fffffffda28: .x = 56 0x00007fffffffda2c: .y = 78 } Updates #21530 --- src/target.zig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/target.zig b/src/target.zig index d67fc797ce..b300d81123 100644 --- a/src/target.zig +++ b/src/target.zig @@ -720,7 +720,7 @@ pub inline fn backendSupportsFeature(backend: std.builtin.CompilerBackend, compt else => false, }, .field_reordering => switch (backend) { - .stage2_c, .stage2_llvm => true, + .stage2_c, .stage2_llvm, .stage2_x86_64 => true, else => false, }, .safety_checked_instructions => switch (backend) {