| ... | ... | @@ -11577,29 +11577,35 @@ fn ccAbiPromoteInt( |
| 11577 | 11577 | .Int, .Enum, .ErrorSet => ty.intInfo(mod), |
| 11578 | 11578 | else => return null, |
| 11579 | 11579 | }; |
| 11580 | | return switch (target.cpu.arch) { |
| 11581 | | .riscv64 => switch (int_info.bits) { |
| 11580 | return switch (target.os.tag) { |
| 11581 | .macos => switch (int_info.bits) { |
| 11582 | 11582 | 0...16 => int_info.signedness, |
| 11583 | | 32 => .signed, // LLVM always signextends 32 bit ints, unsure if bug. |
| 11584 | | 17...31, 33...63 => int_info.signedness, |
| 11585 | 11583 | else => null, |
| 11586 | 11584 | }, |
| 11585 | else => switch (target.cpu.arch) { |
| 11586 | .riscv64 => switch (int_info.bits) { |
| 11587 | 0...16 => int_info.signedness, |
| 11588 | 32 => .signed, // LLVM always signextends 32 bit ints, unsure if bug. |
| 11589 | 17...31, 33...63 => int_info.signedness, |
| 11590 | else => null, |
| 11591 | }, |
| 11587 | 11592 | |
| 11588 | | .sparc64, |
| 11589 | | .powerpc64, |
| 11590 | | .powerpc64le, |
| 11591 | | => switch (int_info.bits) { |
| 11592 | | 0...63 => int_info.signedness, |
| 11593 | | else => null, |
| 11594 | | }, |
| 11593 | .sparc64, |
| 11594 | .powerpc64, |
| 11595 | .powerpc64le, |
| 11596 | => switch (int_info.bits) { |
| 11597 | 0...63 => int_info.signedness, |
| 11598 | else => null, |
| 11599 | }, |
| 11595 | 11600 | |
| 11596 | | .aarch64, |
| 11597 | | .aarch64_be, |
| 11598 | | => null, |
| 11601 | .aarch64, |
| 11602 | .aarch64_be, |
| 11603 | => null, |
| 11599 | 11604 | |
| 11600 | | else => switch (int_info.bits) { |
| 11601 | | 0...16 => int_info.signedness, |
| 11602 | | else => null, |
| 11605 | else => switch (int_info.bits) { |
| 11606 | 0...16 => int_info.signedness, |
| 11607 | else => null, |
| 11608 | }, |
| 11603 | 11609 | }, |
| 11604 | 11610 | }; |
| 11605 | 11611 | } |