authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-12-02 11:07:17+01:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-12-03 12:07:34+01:00
log37538f19cddce21bcc099ada6638432b8cbbd877
tree087d1780c1c9426de0007ac3d7a05da388c6a11e
parent204df19d79833382bbee0ed110502919dc7341f8
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

zig.h: Use zig_*_windows_teb() inline assembly with TinyCC and slimcc.


1 files changed, 4 insertions(+), 4 deletions(-)

lib/zig.h+4-4
......@@ -4002,7 +4002,7 @@ static inline void* zig_thumb_windows_teb(void) {
40024002 void* teb = 0;
40034003#if defined(zig_msvc)
40044004 teb = (void*)_MoveFromCoprocessor(15, 0, 13, 0, 2);
4005#elif defined(zig_gnuc)
4005#elif defined(zig_gnuc) || defined(zig_tinyc) || defined(zig_slimcc)
40064006 __asm__ ("mrc p15, 0, %[ptr], c13, c0, 2" : [ptr] "=r" (teb));
40074007#endif
40084008 return teb;
......@@ -4014,7 +4014,7 @@ static inline void* zig_aarch64_windows_teb(void) {
40144014 void* teb = 0;
40154015#if defined(zig_msvc)
40164016 teb = (void*)__readx18qword(0x0);
4017#elif defined(zig_gnuc)
4017#elif defined(zig_gnuc) || defined(zig_tinyc) || defined(zig_slimcc)
40184018 __asm__ ("mov %[ptr], x18" : [ptr] "=r" (teb));
40194019#endif
40204020 return teb;
......@@ -4026,7 +4026,7 @@ static inline void* zig_x86_windows_teb(void) {
40264026 void* teb = 0;
40274027#if defined(zig_msvc)
40284028 teb = (void*)__readfsdword(0x18);
4029#elif defined(zig_gnuc)
4029#elif defined(zig_gnuc) || defined(zig_tinyc) || defined(zig_slimcc)
40304030 __asm__ ("movl %%fs:0x18, %[ptr]" : [ptr] "=r" (teb));
40314031#endif
40324032 return teb;
......@@ -4038,7 +4038,7 @@ static inline void* zig_x86_64_windows_teb(void) {
40384038 void* teb = 0;
40394039#if defined(zig_msvc)
40404040 teb = (void*)__readgsqword(0x30);
4041#elif defined(zig_gnuc)
4041#elif defined(zig_gnuc) || defined(zig_tinyc) || defined(zig_slimcc)
40424042 __asm__ ("movq %%gs:0x30, %[ptr]" : [ptr] "=r" (teb));
40434043#endif
40444044 return teb;