| ... | @@ -1932,26 +1932,30 @@ pub fn stackAlignment(target: Target) u16 { | ... | @@ -1932,26 +1932,30 @@ pub fn stackAlignment(target: Target) u16 { |
| 1932 | /// Note that char signedness is implementation-defined and many compilers provide | 1932 | /// Note that char signedness is implementation-defined and many compilers provide |
| 1933 | /// an option to override the default signedness e.g. GCC's -funsigned-char / -fsigned-char | 1933 | /// an option to override the default signedness e.g. GCC's -funsigned-char / -fsigned-char |
| 1934 | pub fn charSignedness(target: Target) std.builtin.Signedness { | 1934 | pub fn charSignedness(target: Target) std.builtin.Signedness { |
| 1935 | switch (target.cpu.arch) { | 1935 | if (target.isDarwin() or target.os.tag == .windows or target.os.tag == .uefi) return .signed; |
| 1936 | .aarch64, | 1936 | |
| 1937 | .aarch64_be, | 1937 | return switch (target.cpu.arch) { |
| 1938 | .arm, | 1938 | .arm, |
| 1939 | .armeb, | 1939 | .armeb, |
| 1940 | .thumb, | 1940 | .thumb, |
| 1941 | .thumbeb, | 1941 | .thumbeb, |
| 1942 | => return if (target.os.tag.isDarwin() or target.os.tag == .windows) .signed else .unsigned, | 1942 | .aarch64, |
| 1943 | .powerpc, .powerpc64 => return if (target.os.tag.isDarwin()) .signed else .unsigned, | 1943 | .aarch64_be, |
| | 1944 | .arc, |
| | 1945 | .csky, |
| | 1946 | .msp430, |
| | 1947 | .powerpc, |
| 1944 | .powerpcle, | 1948 | .powerpcle, |
| | 1949 | .powerpc64, |
| 1945 | .powerpc64le, | 1950 | .powerpc64le, |
| 1946 | .s390x, | 1951 | .s390x, |
| 1947 | .xcore, | | |
| 1948 | .arc, | | |
| 1949 | .msp430, | | |
| 1950 | .riscv32, | 1952 | .riscv32, |
| 1951 | .riscv64, | 1953 | .riscv64, |
| 1952 | => return .unsigned, | 1954 | .xcore, |
| 1953 | else => return .signed, | 1955 | .xtensa, |
| 1954 | } | 1956 | => .unsigned, |
| | 1957 | else => .signed, |
| | 1958 | }; |
| 1955 | } | 1959 | } |
| 1956 | | 1960 | |
| 1957 | pub const CType = enum { | 1961 | pub const CType = enum { |