| ... | @@ -3149,39 +3149,39 @@ pub fn stackGrowth(target: *const Target) StackGrowth { | ... | @@ -3149,39 +3149,39 @@ pub fn stackGrowth(target: *const Target) StackGrowth { |
| 3149 | /// an option to override the default signedness e.g. GCC's -funsigned-char / -fsigned-char | 3149 | /// an option to override the default signedness e.g. GCC's -funsigned-char / -fsigned-char |
| 3150 | /// Returns `null` if no C ABI is defined for this target. | 3150 | /// Returns `null` if no C ABI is defined for this target. |
| 3151 | pub fn cCharSignedness(target: *const Target) ?std.builtin.Signedness { | 3151 | pub fn cCharSignedness(target: *const Target) ?std.builtin.Signedness { |
| 3152 | switch (target.os.tag) { | 3152 | return switch (target.os.tag) { |
| 3153 | .ps3 => return .signed, | 3153 | .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos => .signed, |
| 3154 | .opengl => return null, | 3154 | .windows, .uefi => .signed, |
| 3155 | else => {}, | 3155 | .ps3 => .signed, |
| 3156 | } | 3156 | .opengl => null, |
| 3157 | if (target.os.tag.isDarwin() or target.os.tag == .windows or target.os.tag == .uefi) return .signed; | 3157 | else => switch (target.cpu.arch) { |
| 3158 | return switch (target.cpu.arch) { | 3158 | .aarch64, |
| 3159 | .aarch64, | 3159 | .aarch64_be, |
| 3160 | .aarch64_be, | 3160 | .arm, |
| 3161 | .arm, | 3161 | .armeb, |
| 3162 | .armeb, | 3162 | .arc, |
| 3163 | .arc, | 3163 | .arceb, |
| 3164 | .arceb, | 3164 | .csky, |
| 3165 | .csky, | 3165 | .ez80, |
| 3166 | .ez80, | 3166 | .hexagon, |
| 3167 | .hexagon, | 3167 | .msp430, |
| 3168 | .msp430, | 3168 | .powerpc, |
| 3169 | .powerpc, | 3169 | .powerpcle, |
| 3170 | .powerpcle, | 3170 | .powerpc64, |
| 3171 | .powerpc64, | 3171 | .powerpc64le, |
| 3172 | .powerpc64le, | 3172 | .s390x, |
| 3173 | .s390x, | 3173 | .riscv32, |
| 3174 | .riscv32, | 3174 | .riscv32be, |
| 3175 | .riscv32be, | 3175 | .riscv64, |
| 3176 | .riscv64, | 3176 | .riscv64be, |
| 3177 | .riscv64be, | 3177 | .thumb, |
| 3178 | .thumb, | 3178 | .thumbeb, |
| 3179 | .thumbeb, | 3179 | .xcore, |
| 3180 | .xcore, | 3180 | .xtensa, |
| 3181 | .xtensa, | 3181 | .xtensaeb, |
| 3182 | .xtensaeb, | 3182 | => .unsigned, |
| 3183 | => .unsigned, | 3183 | else => .signed, |
| 3184 | else => .signed, | 3184 | }, |
| 3185 | }; | 3185 | }; |
| 3186 | } | 3186 | } |
| 3187 | | 3187 | |