authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-10-06 16:21:06+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-10-06 17:19:07+02:00
log770aa54579130bd539670ebad18534e1bb2f6e80
tree9786e055dd6feda747adeeb25ff522e87bfa2ae1
parentbe5378b03805fa95b3cf36b6727d2c364c155e64
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

std.Target: Fix cTypePreferredAlignment() to always return 1 for avr.

This matches avr-gcc's ABI.

1 files changed, 7 insertions(+), 8 deletions(-)

lib/std/Target.zig+7-8
......@@ -2626,7 +2626,6 @@ pub fn cTypeAlignment(target: Target, c_type: CType) u16 {
26262626 },
26272627
26282628 .msp430,
2629 .avr,
26302629 => 2,
26312630
26322631 .arc,
......@@ -2675,6 +2674,9 @@ pub fn cTypeAlignment(target: Target, c_type: CType) u16 {
26752674 .wasm32,
26762675 .wasm64,
26772676 => 16,
2677
2678 .avr,
2679 => unreachable, // Handled above.
26782680 }),
26792681 );
26802682}
......@@ -2709,12 +2711,7 @@ pub fn cTypePreferredAlignment(target: Target, c_type: CType) u16 {
27092711 .longdouble => return 4,
27102712 else => {},
27112713 },
2712 .avr => switch (c_type) {
2713 .char, .int, .uint, .long, .ulong, .float, .longdouble => return 1,
2714 .short, .ushort => return 2,
2715 .double => return 4,
2716 .longlong, .ulonglong => return 8,
2717 },
2714 .avr => return 1,
27182715 .x86 => switch (target.os.tag) {
27192716 .windows, .uefi => switch (c_type) {
27202717 .longdouble => switch (target.abi) {
......@@ -2750,7 +2747,6 @@ pub fn cTypePreferredAlignment(target: Target, c_type: CType) u16 {
27502747 .arc,
27512748 .arm,
27522749 .armeb,
2753 .avr,
27542750 .thumb,
27552751 .thumbeb,
27562752 .amdgcn,
......@@ -2788,6 +2784,9 @@ pub fn cTypePreferredAlignment(target: Target, c_type: CType) u16 {
27882784 .wasm32,
27892785 .wasm64,
27902786 => 16,
2787
2788 .avr,
2789 => unreachable, // Handled above.
27912790 }),
27922791 );
27932792}