| ... | @@ -11,8 +11,6 @@ | ... | @@ -11,8 +11,6 @@ |
| 11 | #elif defined(__GNUC__) | 11 | #elif defined(__GNUC__) |
| 12 | #define zig_gcc | 12 | #define zig_gcc |
| 13 | #define zig_gnuc | 13 | #define zig_gnuc |
| 14 | #elif defined(__IBMC__) | | |
| 15 | #define zig_xlc | | |
| 16 | #elif defined(__TINYC__) | 14 | #elif defined(__TINYC__) |
| 17 | #define zig_tinyc | 15 | #define zig_tinyc |
| 18 | #elif defined(__slimcc__) | 16 | #elif defined(__slimcc__) |
| ... | @@ -28,8 +26,18 @@ | ... | @@ -28,8 +26,18 @@ |
| 28 | #define zig_arm | 26 | #define zig_arm |
| 29 | #elif defined(__arm__) | 27 | #elif defined(__arm__) |
| 30 | #define zig_arm | 28 | #define zig_arm |
| | 29 | #elif defined(__arc__) |
| | 30 | #define zig_arc |
| | 31 | #elif defined(__csky__) |
| | 32 | #define zig_csky |
| 31 | #elif defined(__hexagon__) | 33 | #elif defined(__hexagon__) |
| 32 | #define zig_hexagon | 34 | #define zig_hexagon |
| | 35 | #elif defined(__hppa__) && defined(_LP64) |
| | 36 | #define zig_hppa64 |
| | 37 | #define zig_hppa |
| | 38 | #elif defined(__hppa__) |
| | 39 | #define zig_hppa32 |
| | 40 | #define zig_hppa |
| 33 | #elif defined(__kvx__) | 41 | #elif defined(__kvx__) |
| 34 | #define zig_kvx | 42 | #define zig_kvx |
| 35 | #elif defined(__loongarch32) | 43 | #elif defined(__loongarch32) |
| ... | @@ -42,6 +50,8 @@ | ... | @@ -42,6 +50,8 @@ |
| 42 | #define zig_m68k | 50 | #define zig_m68k |
| 43 | #elif defined(__m88k__) | 51 | #elif defined(__m88k__) |
| 44 | #define zig_m88k | 52 | #define zig_m88k |
| | 53 | #elif defined(__microblaze__) |
| | 54 | #define zig_microblaze |
| 45 | #elif defined(__mips64) | 55 | #elif defined(__mips64) |
| 46 | #define zig_mips64 | 56 | #define zig_mips64 |
| 47 | #define zig_mips | 57 | #define zig_mips |
| ... | @@ -64,6 +74,8 @@ | ... | @@ -64,6 +74,8 @@ |
| 64 | #define zig_riscv | 74 | #define zig_riscv |
| 65 | #elif defined(__s390x__) | 75 | #elif defined(__s390x__) |
| 66 | #define zig_s390x | 76 | #define zig_s390x |
| | 77 | #elif defined(__sh__) |
| | 78 | #define zig_sh |
| 67 | #elif defined(__sparc__) && defined(__arch64__) | 79 | #elif defined(__sparc__) && defined(__arch64__) |
| 68 | #define zig_sparc64 | 80 | #define zig_sparc64 |
| 69 | #define zig_sparc | 81 | #define zig_sparc |
| ... | @@ -100,32 +112,30 @@ | ... | @@ -100,32 +112,30 @@ |
| 100 | #define zig_big_endian 1 | 112 | #define zig_big_endian 1 |
| 101 | #endif | 113 | #endif |
| 102 | | 114 | |
| 103 | #if defined(__MACH__) | 115 | #if defined(__APPLE__) |
| 104 | #define zig_darwin | 116 | #define zig_darwin |
| 105 | #elif defined(__DragonFly__) | 117 | #elif defined(__DragonFly__) |
| 106 | #define zig_dragonfly | 118 | #define zig_dragonfly |
| 107 | #define zig_bsd | | |
| 108 | #elif defined(__EMSCRIPTEN__) | 119 | #elif defined(__EMSCRIPTEN__) |
| 109 | #define zig_emscripten | 120 | #define zig_emscripten |
| 110 | #elif defined(__FreeBSD__) | 121 | #elif defined(__FreeBSD__) |
| 111 | #define zig_freebsd | 122 | #define zig_freebsd |
| 112 | #define zig_bsd | | |
| 113 | #elif defined(__Fuchsia__) | 123 | #elif defined(__Fuchsia__) |
| 114 | #define zig_fuchsia | 124 | #define zig_fuchsia |
| 115 | #elif defined(__HAIKU__) | 125 | #elif defined(__HAIKU__) |
| 116 | #define zig_haiku | 126 | #define zig_haiku |
| 117 | #elif defined(__gnu_hurd__) | 127 | #elif defined(__gnu_hurd__) |
| 118 | #define zig_hurd | 128 | #define zig_hurd |
| | 129 | #elif defined(__illumos__) |
| | 130 | #define zig_illumos |
| 119 | #elif defined(__linux__) | 131 | #elif defined(__linux__) |
| 120 | #define zig_linux | 132 | #define zig_linux |
| 121 | #elif defined(__NetBSD__) | 133 | #elif defined(__NetBSD__) |
| 122 | #define zig_netbsd | 134 | #define zig_netbsd |
| 123 | #define zig_bsd | | |
| 124 | #elif defined(__OpenBSD__) | 135 | #elif defined(__OpenBSD__) |
| 125 | #define zig_openbsd | 136 | #define zig_openbsd |
| 126 | #define zig_bsd | 137 | #elif defined(__serenity__) |
| 127 | #elif defined(__SVR4) | 138 | #define zig_serenity |
| 128 | #define zig_solaris | | |
| 129 | #elif defined(__wasi__) | 139 | #elif defined(__wasi__) |
| 130 | #define zig_wasi | 140 | #define zig_wasi |
| 131 | #elif defined(_WIN32) | 141 | #elif defined(_WIN32) |
| ... | @@ -404,14 +414,22 @@ | ... | @@ -404,14 +414,22 @@ |
| 404 | #define zig_trap() __asm__ volatile("udf #0xfe") | 414 | #define zig_trap() __asm__ volatile("udf #0xfe") |
| 405 | #elif defined(zig_arm) || defined(zig_aarch64) | 415 | #elif defined(zig_arm) || defined(zig_aarch64) |
| 406 | #define zig_trap() __asm__ volatile("udf #0xfdee") | 416 | #define zig_trap() __asm__ volatile("udf #0xfdee") |
| | 417 | #elif defined(zig_arc) |
| | 418 | #define zig_trap() __asm__ volatile("unimp_s") |
| | 419 | #elif defined(zig_csky) |
| | 420 | #define zig_trap() __asm__ volatile(".word 0x3fff") |
| 407 | #elif defined(zig_hexagon) | 421 | #elif defined(zig_hexagon) |
| 408 | #define zig_trap() __asm__ volatile("r27:26 = memd(#0xbadc0fee)") | 422 | #define zig_trap() __asm__ volatile("r27:26 = memd(#0xbadc0fee)") |
| | 423 | #elif defined(zig_hppa) |
| | 424 | #define zig_trap() __asm__ volatile("iitlbp %r0, (%sr0, %r0)") |
| 409 | #elif defined(zig_kvx) || defined(zig_loongarch) || defined(zig_powerpc) | 425 | #elif defined(zig_kvx) || defined(zig_loongarch) || defined(zig_powerpc) |
| 410 | #define zig_trap() __asm__ volatile(".word 0x0") | 426 | #define zig_trap() __asm__ volatile(".word 0x0") |
| 411 | #elif defined(zig_m68k) | 427 | #elif defined(zig_m68k) |
| 412 | #define zig_trap() __asm__ volatile("illegal") | 428 | #define zig_trap() __asm__ volatile("illegal") |
| 413 | #elif defined(zig_m88k) | 429 | #elif defined(zig_m88k) |
| 414 | #define zig_trap() __asm__ volatile("tb0 0, %%r0, 511") | 430 | #define zig_trap() __asm__ volatile("tb0 0, %%r0, 511") |
| | 431 | #elif defined(zig_microblaze) |
| | 432 | #define zig_trap() __asm__ volatile("getd r0, r0") |
| 415 | #elif defined(zig_mips) | 433 | #elif defined(zig_mips) |
| 416 | #define zig_trap() __asm__ volatile(".word 0x3d") | 434 | #define zig_trap() __asm__ volatile(".word 0x3d") |
| 417 | #elif defined(zig_or1k) | 435 | #elif defined(zig_or1k) |
| ... | @@ -420,6 +438,8 @@ | ... | @@ -420,6 +438,8 @@ |
| 420 | #define zig_trap() __asm__ volatile("unimp") | 438 | #define zig_trap() __asm__ volatile("unimp") |
| 421 | #elif defined(zig_s390x) | 439 | #elif defined(zig_s390x) |
| 422 | #define zig_trap() __asm__ volatile("j 0x2") | 440 | #define zig_trap() __asm__ volatile("j 0x2") |
| | 441 | #elif defined(zig_sh) |
| | 442 | #define zig_trap() __asm__ volatile(".word 0x0001") |
| 423 | #elif defined(zig_sparc) | 443 | #elif defined(zig_sparc) |
| 424 | #define zig_trap() __asm__ volatile("illtrap") | 444 | #define zig_trap() __asm__ volatile("illtrap") |
| 425 | #elif defined(zig_x86_16) | 445 | #elif defined(zig_x86_16) |
| ... | @@ -446,16 +466,22 @@ | ... | @@ -446,16 +466,22 @@ |
| 446 | | 466 | |
| 447 | #if defined(zig_alpha) | 467 | #if defined(zig_alpha) |
| 448 | #define zig_breakpoint() __asm__ volatile("call_pal 0x000080") | 468 | #define zig_breakpoint() __asm__ volatile("call_pal 0x000080") |
| 449 | #elif defined(zig_arm) | 469 | #elif defined(zig_arm) || defined(zig_csky) |
| 450 | #define zig_breakpoint() __asm__ volatile("bkpt #0x0") | 470 | #define zig_breakpoint() __asm__ volatile("bkpt #0x0") |
| 451 | #elif defined(zig_aarch64) | 471 | #elif defined(zig_aarch64) |
| 452 | #define zig_breakpoint() __asm__ volatile("brk #0xf000") | 472 | #define zig_breakpoint() __asm__ volatile("brk #0xf000") |
| | 473 | #elif defined(zig_arc) |
| | 474 | #define zig_breakpoint() __asm__ volatile("brk_s") |
| 453 | #elif defined(zig_hexagon) | 475 | #elif defined(zig_hexagon) |
| 454 | #define zig_breakpoint() __asm__ volatile("brkpt") | 476 | #define zig_breakpoint() __asm__ volatile("brkpt") |
| | 477 | #elif defined(zig_hppa) |
| | 478 | #define zig_breakpoint() __asm__ volatile("break 0x04, 0x0008") |
| 455 | #elif defined(zig_kvx) || defined(zig_loongarch) | 479 | #elif defined(zig_kvx) || defined(zig_loongarch) |
| 456 | #define zig_breakpoint() __asm__ volatile("break 0x0") | 480 | #define zig_breakpoint() __asm__ volatile("break 0x0") |
| 457 | #elif defined(zig_m88k) | 481 | #elif defined(zig_m88k) |
| 458 | #define zig_breakpoint() __asm__ volatile("illop1") | 482 | #define zig_breakpoint() __asm__ volatile("illop1") |
| | 483 | #elif defined(zig_microblaze) |
| | 484 | #define zig_breakpoint() __asm__ volatile("brki r16, 0x0018") |
| 459 | #elif defined(zig_mips) | 485 | #elif defined(zig_mips) |
| 460 | #define zig_breakpoint() __asm__ volatile("break") | 486 | #define zig_breakpoint() __asm__ volatile("break") |
| 461 | #elif defined(zig_or1k) | 487 | #elif defined(zig_or1k) |
| ... | @@ -466,6 +492,8 @@ | ... | @@ -466,6 +492,8 @@ |
| 466 | #define zig_breakpoint() __asm__ volatile("ebreak") | 492 | #define zig_breakpoint() __asm__ volatile("ebreak") |
| 467 | #elif defined(zig_s390x) | 493 | #elif defined(zig_s390x) |
| 468 | #define zig_breakpoint() __asm__ volatile("j 0x6") | 494 | #define zig_breakpoint() __asm__ volatile("j 0x6") |
| | 495 | #elif defined(zig_sh) |
| | 496 | #define zig_breakpoint() __asm__ volatile("trapa #0xc3") |
| 469 | #elif defined(zig_sparc) | 497 | #elif defined(zig_sparc) |
| 470 | #define zig_breakpoint() __asm__ volatile("ta 0x1") | 498 | #define zig_breakpoint() __asm__ volatile("ta 0x1") |
| 471 | #elif defined(zig_x86) | 499 | #elif defined(zig_x86) |