| ... | ... | @@ -1852,14 +1852,15 @@ pub fn ptrBitWidth_cpu_abi(cpu: Cpu, abi: Abi) u16 { |
| 1852 | 1852 | .kalimba, |
| 1853 | 1853 | .lanai, |
| 1854 | 1854 | .wasm32, |
| 1855 | .sparc, |
| 1855 | 1856 | .spirv32, |
| 1856 | 1857 | .loongarch32, |
| 1857 | | .dxil, |
| 1858 | 1858 | .xtensa, |
| 1859 | 1859 | => 32, |
| 1860 | 1860 | |
| 1861 | 1861 | .aarch64, |
| 1862 | 1862 | .aarch64_be, |
| 1863 | .dxil, |
| 1863 | 1864 | .mips64, |
| 1864 | 1865 | .mips64el, |
| 1865 | 1866 | .powerpc64, |
| ... | ... | @@ -1874,13 +1875,10 @@ pub fn ptrBitWidth_cpu_abi(cpu: Cpu, abi: Abi) u16 { |
| 1874 | 1875 | .sparc64, |
| 1875 | 1876 | .s390x, |
| 1876 | 1877 | .ve, |
| 1878 | .spirv, |
| 1877 | 1879 | .spirv64, |
| 1878 | 1880 | .loongarch64, |
| 1879 | 1881 | => 64, |
| 1880 | | |
| 1881 | | .sparc => if (std.Target.sparc.featureSetHas(cpu.features, .v9)) 64 else 32, |
| 1882 | | |
| 1883 | | .spirv => @panic("TODO what should this value be?"), |
| 1884 | 1882 | }; |
| 1885 | 1883 | } |
| 1886 | 1884 | |
| ... | ... | @@ -2061,12 +2059,12 @@ pub fn c_type_bit_size(target: Target, c_type: CType) u16 { |
| 2061 | 2059 | .aarch64, |
| 2062 | 2060 | .aarch64_be, |
| 2063 | 2061 | .s390x, |
| 2064 | | .sparc, |
| 2065 | 2062 | .sparc64, |
| 2066 | 2063 | .wasm32, |
| 2067 | 2064 | .wasm64, |
| 2068 | 2065 | .loongarch32, |
| 2069 | 2066 | .loongarch64, |
| 2067 | .ve, |
| 2070 | 2068 | => return 128, |
| 2071 | 2069 | |
| 2072 | 2070 | else => return 64, |
| ... | ... | @@ -2167,12 +2165,12 @@ pub fn c_type_bit_size(target: Target, c_type: CType) u16 { |
| 2167 | 2165 | .s390x, |
| 2168 | 2166 | .mips64, |
| 2169 | 2167 | .mips64el, |
| 2170 | | .sparc, |
| 2171 | 2168 | .sparc64, |
| 2172 | 2169 | .wasm32, |
| 2173 | 2170 | .wasm64, |
| 2174 | 2171 | .loongarch32, |
| 2175 | 2172 | .loongarch64, |
| 2173 | .ve, |
| 2176 | 2174 | => return 128, |
| 2177 | 2175 | |
| 2178 | 2176 | else => return 64, |
| ... | ... | @@ -2252,23 +2250,20 @@ pub fn c_type_bit_size(target: Target, c_type: CType) u16 { |
| 2252 | 2250 | .longdouble => return 64, |
| 2253 | 2251 | }, |
| 2254 | 2252 | |
| 2255 | | .amdhsa, .amdpal => switch (c_type) { |
| 2253 | .amdhsa, .amdpal, .mesa3d => switch (c_type) { |
| 2256 | 2254 | .char => return 8, |
| 2257 | 2255 | .short, .ushort => return 16, |
| 2258 | 2256 | .int, .uint, .float => return 32, |
| 2259 | 2257 | .long, .ulong, .longlong, .ulonglong, .double => return 64, |
| 2260 | | .longdouble => return 128, |
| 2258 | .longdouble => return 64, |
| 2261 | 2259 | }, |
| 2262 | 2260 | |
| 2263 | 2261 | .opencl, .vulkan => switch (c_type) { |
| 2264 | 2262 | .char => return 8, |
| 2265 | 2263 | .short, .ushort => return 16, |
| 2266 | 2264 | .int, .uint, .float => return 32, |
| 2267 | | .long, .ulong, .double => return 64, |
| 2268 | | .longlong, .ulonglong => return 128, |
| 2269 | | // Note: The OpenCL specification does not guarantee a particular size for long double, |
| 2270 | | // but clang uses 128 bits. |
| 2271 | | .longdouble => return 128, |
| 2265 | .long, .ulong, .longlong, .ulonglong, .double => return 64, |
| 2266 | .longdouble => return 64, |
| 2272 | 2267 | }, |
| 2273 | 2268 | |
| 2274 | 2269 | .ps4, .ps5 => switch (c_type) { |
| ... | ... | @@ -2285,7 +2280,6 @@ pub fn c_type_bit_size(target: Target, c_type: CType) u16 { |
| 2285 | 2280 | .rtems, |
| 2286 | 2281 | .aix, |
| 2287 | 2282 | .elfiamcu, |
| 2288 | | .mesa3d, |
| 2289 | 2283 | .contiki, |
| 2290 | 2284 | .hermit, |
| 2291 | 2285 | .hurd, |
| ... | ... | @@ -2344,11 +2338,8 @@ pub fn c_type_alignment(target: Target, c_type: CType) u16 { |
| 2344 | 2338 | .csky, |
| 2345 | 2339 | .x86, |
| 2346 | 2340 | .xcore, |
| 2347 | | .dxil, |
| 2348 | 2341 | .loongarch32, |
| 2349 | | .spirv32, |
| 2350 | 2342 | .kalimba, |
| 2351 | | .ve, |
| 2352 | 2343 | .spu_2, |
| 2353 | 2344 | .xtensa, |
| 2354 | 2345 | => 4, |
| ... | ... | @@ -2356,22 +2347,24 @@ pub fn c_type_alignment(target: Target, c_type: CType) u16 { |
| 2356 | 2347 | .amdgcn, |
| 2357 | 2348 | .bpfel, |
| 2358 | 2349 | .bpfeb, |
| 2350 | .dxil, |
| 2359 | 2351 | .hexagon, |
| 2360 | | .loongarch64, |
| 2361 | 2352 | .m68k, |
| 2362 | 2353 | .mips, |
| 2363 | 2354 | .mipsel, |
| 2364 | 2355 | .sparc, |
| 2365 | | .sparc64, |
| 2366 | 2356 | .lanai, |
| 2367 | 2357 | .nvptx, |
| 2368 | 2358 | .nvptx64, |
| 2369 | 2359 | .s390x, |
| 2360 | .spirv, |
| 2361 | .spirv32, |
| 2370 | 2362 | .spirv64, |
| 2371 | 2363 | => 8, |
| 2372 | 2364 | |
| 2373 | 2365 | .aarch64, |
| 2374 | 2366 | .aarch64_be, |
| 2367 | .loongarch64, |
| 2375 | 2368 | .mips64, |
| 2376 | 2369 | .mips64el, |
| 2377 | 2370 | .powerpc, |
| ... | ... | @@ -2380,12 +2373,12 @@ pub fn c_type_alignment(target: Target, c_type: CType) u16 { |
| 2380 | 2373 | .powerpc64le, |
| 2381 | 2374 | .riscv32, |
| 2382 | 2375 | .riscv64, |
| 2376 | .sparc64, |
| 2383 | 2377 | .x86_64, |
| 2378 | .ve, |
| 2384 | 2379 | .wasm32, |
| 2385 | 2380 | .wasm64, |
| 2386 | 2381 | => 16, |
| 2387 | | |
| 2388 | | .spirv => @panic("TODO what should this value be?"), |
| 2389 | 2382 | }), |
| 2390 | 2383 | ); |
| 2391 | 2384 | } |
| ... | ... | @@ -2449,11 +2442,8 @@ pub fn c_type_preferred_alignment(target: Target, c_type: CType) u16 { |
| 2449 | 2442 | |
| 2450 | 2443 | .csky, |
| 2451 | 2444 | .xcore, |
| 2452 | | .dxil, |
| 2453 | 2445 | .loongarch32, |
| 2454 | | .spirv32, |
| 2455 | 2446 | .kalimba, |
| 2456 | | .ve, |
| 2457 | 2447 | .spu_2, |
| 2458 | 2448 | .xtensa, |
| 2459 | 2449 | => 4, |
| ... | ... | @@ -2467,23 +2457,25 @@ pub fn c_type_preferred_alignment(target: Target, c_type: CType) u16 { |
| 2467 | 2457 | .amdgcn, |
| 2468 | 2458 | .bpfel, |
| 2469 | 2459 | .bpfeb, |
| 2460 | .dxil, |
| 2470 | 2461 | .hexagon, |
| 2471 | 2462 | .x86, |
| 2472 | | .loongarch64, |
| 2473 | 2463 | .m68k, |
| 2474 | 2464 | .mips, |
| 2475 | 2465 | .mipsel, |
| 2476 | 2466 | .sparc, |
| 2477 | | .sparc64, |
| 2478 | 2467 | .lanai, |
| 2479 | 2468 | .nvptx, |
| 2480 | 2469 | .nvptx64, |
| 2481 | 2470 | .s390x, |
| 2471 | .spirv, |
| 2472 | .spirv32, |
| 2482 | 2473 | .spirv64, |
| 2483 | 2474 | => 8, |
| 2484 | 2475 | |
| 2485 | 2476 | .aarch64, |
| 2486 | 2477 | .aarch64_be, |
| 2478 | .loongarch64, |
| 2487 | 2479 | .mips64, |
| 2488 | 2480 | .mips64el, |
| 2489 | 2481 | .powerpc, |
| ... | ... | @@ -2492,12 +2484,12 @@ pub fn c_type_preferred_alignment(target: Target, c_type: CType) u16 { |
| 2492 | 2484 | .powerpc64le, |
| 2493 | 2485 | .riscv32, |
| 2494 | 2486 | .riscv64, |
| 2487 | .sparc64, |
| 2495 | 2488 | .x86_64, |
| 2489 | .ve, |
| 2496 | 2490 | .wasm32, |
| 2497 | 2491 | .wasm64, |
| 2498 | 2492 | => 16, |
| 2499 | | |
| 2500 | | .spirv => @panic("TODO what should this value be?"), |
| 2501 | 2493 | }), |
| 2502 | 2494 | ); |
| 2503 | 2495 | } |