zig/lib/std
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
..
atomic
build wasm-linker: Implement linker tests (#12006) 2022-07-12 14:36:33 +02:00
c add FreeBSD support to std.os.getFdPath 2022-07-15 10:16:31 +03:00
compress
crypto crypto.sign.ed25519: add support for blind key signatures (#11868) 2022-07-08 13:21:37 +02:00
dwarf
event std.event: use .{} to initiate Lock to unlocked state 2022-07-01 00:09:36 +03:00
fmt std.fmt.parse_float: disable failing aarch64 test from LLVM 14 2022-07-06 16:23:42 -07:00
fs std.fs: remove OpenDirOptions.iterate 2022-07-15 14:39:21 +03:00
hash disable std lib test failing with self-hosted ReleaseSafe 2022-07-20 12:50:58 -07:00
heap Move sys_can_stack_trace from GPA to std.debug so that it can be re-used as needed 2022-06-25 21:27:56 -07:00
http
io std: update test cases to reflect new packed struct semantics 2022-07-12 18:38:11 -07:00
json std.json: move tests to json/test.zig file 2022-07-07 00:05:21 -07:00
math Use Managed.len in sub, divFloor, and divTrunc too 2022-07-16 11:46:13 +09:00
mem
meta
net AstGen: fix loop control flow applying to wrong loop 2022-07-13 16:10:41 -07:00
os LLVM: fix lowering of structs with underaligned fields 2022-07-21 22:51:17 -07:00
rand crypto: add the Xoodoo permutation, prepare for Gimli deprecation (#11866) 2022-07-01 13:18:08 +02:00
target update CPU features to LLVM 14 2022-07-01 21:35:19 -07:00
testing Move sys_can_stack_trace from GPA to std.debug so that it can be re-used as needed 2022-06-25 21:27:56 -07:00
Thread
time
tz
unicode
valgrind
x LLVM: fix lowering of structs with underaligned fields 2022-07-21 22:51:17 -07:00
zig Read dynstr starting at rpath offset 2022-07-19 14:01:35 -04:00
array_hash_map.zig
array_list.zig
ascii.zig
atomic.zig
base64.zig
bit_set.zig stage2: check that struct is a tuple when value tags differ in eql 2022-06-17 21:04:21 +03:00
bounded_array.zig
buf_map.zig
buf_set.zig
build.zig build.zig: teach --compress-debug-sections 2022-07-20 18:26:17 -04:00
builtin.zig std.builtin.returnError: disable runtime safety 2022-07-07 18:24:34 -07:00
c.zig
child_process.zig
coff.zig
compress.zig
comptime_string_map.zig
crypto.zig crypto: add the Xoodoo permutation, prepare for Gimli deprecation (#11866) 2022-07-01 13:18:08 +02:00
cstr.zig
debug.zig Merge pull request #11919 from squeek502/failing-allocator-stacktrace 2022-06-28 14:44:00 -04:00
dwarf.zig
dynamic_library.zig
elf.zig
enums.zig
event.zig
fifo.zig
fmt.zig Fix #9184: fmtIntSizeDec/fmtIntSizeBin support FormatOptions 2022-07-21 18:41:21 +03:00
fs.zig std.fs: remove accidental comptime block 2022-07-17 11:54:13 +03:00
hash_map.zig
hash.zig
heap.zig
http.zig
io.zig
json.zig std.json: move tests to json/test.zig file 2022-07-07 00:05:21 -07:00
leb128.zig std.leb128: disable regressed test due to LLVM 14 2022-07-06 20:12:00 -07:00
linked_list.zig
log.zig std.log: deduplicate switch 2022-07-09 15:19:03 +03:00
macho.zig macho: Pass sections by pointer when slicing names 2022-07-20 03:45:29 -04:00
math.zig std.math: add degreesToRadians and radiansToDegrees 2022-07-11 16:40:05 +03:00
mem.zig std: update test cases to reflect new packed struct semantics 2022-07-12 18:38:11 -07:00
meta.zig
multi_array_list.zig
net.zig
once.zig
os.zig std.fs: remove OpenDirOptions.iterate 2022-07-15 14:39:21 +03:00
packed_int_array.zig
pdb.zig
priority_dequeue.zig
priority_queue.zig Revert "AstGen: preserve inferred ptr result loc for breaks" 2022-06-28 18:38:25 -07:00
process.zig Sema: validate deref operator type and value 2022-07-01 10:22:25 +03:00
Progress.zig
rand.zig crypto: add the Xoodoo permutation, prepare for Gimli deprecation (#11866) 2022-07-01 13:18:08 +02:00
segmented_list.zig
SemanticVersion.zig
simd.zig std: disable aarch64 tests that regressed from LLVM 14 2022-07-06 15:57:36 -07:00
sort.zig
start_windows_tls.zig
start.zig Sema: validate extern types 2022-07-11 18:47:29 +03:00
std.zig
target.zig update CPU features to LLVM 14 2022-07-01 21:35:19 -07:00
testing.zig std.testing: add refAllDeclsRecursive function 2022-07-16 12:33:25 +03:00
Thread.zig std.Thread: fix mutable ref of temporary 2022-07-04 16:53:41 -07:00
time.zig
treap.zig
tz.zig std.tz: fix function returning pointer to local variable 2022-06-17 21:04:21 +03:00
unicode.zig
valgrind.zig
wasm.zig
x.zig
zig.zig Compilation: do not repeat same source line for notes 2022-07-10 23:47:56 +03:00