zig/lib/std/x/os
Andrew Kelley f550c29c4e 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
2022-07-21 22:51:17 -07:00
..
io.zig LLVM: fix lowering of structs with underaligned fields 2022-07-21 22:51:17 -07:00
net.zig std.x.os.net: make error set consistent across targets 2022-06-27 18:26:50 -07:00
socket.zig migrate from std.Target.current to @import("builtin").target 2021-10-04 23:48:55 -07:00
socket_posix.zig zig fmt: remove trailing whitespace on doc comments 2022-04-05 18:08:33 +03:00
socket_windows.zig os: usingnamespace fixes for std.x.os.Socket and std.os.TCP 2021-09-12 23:36:44 -04:00