aboutsummaryrefslogtreecommitdiff
path: root/lib/std/build/RunStep.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2022-07-21 16:50:06 -0700
committerAndrew Kelley <andrew@ziglang.org>2022-07-21 22:51:17 -0700
commitf550c29c4e76ccfbdbc8ec2159cf90474530a24c (patch)
tree66b810de7b303ce71bb7eb538cc8a2b497c11d72 /lib/std/build/RunStep.zig
parent460211431f407c9f707e3ac3bbff61610a487926 (diff)
downloadzig-f550c29c4e76ccfbdbc8ec2159cf90474530a24c.tar.gz
zig-f550c29c4e76ccfbdbc8ec2159cf90474530a24c.zip
LLVM: fix lowering of structs with underaligned fields
When lowering a struct type to an LLVM struct type, keep track of whether there are any underaligned fields. If so, then make it a packed llvm struct. This works because we already insert manual padding bytes regardless. We could unconditionally use an LLVM packed struct; the reason we bother checking for underaligned fields is that it is a conservative choice, in case LLVM handles packed structs less optimally. A future improvement could simplify this code by unconditionally using packed LLVM structs and then make sure measure perf is unaffected. closes #12190
Diffstat (limited to 'lib/std/build/RunStep.zig')
0 files changed, 0 insertions, 0 deletions