authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2025-09-17 21:21:09+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2025-09-18 12:42:24+02:00
log4aa35160ebeb86aad3431791d57f9bd53c9079f8
treef6a88960a27297f546941c58ef21ed6808c0c1b8
parent5e9e1fb0c85eacd412cb6cf4df14adc39f4c008a
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

stage1: update zig1.wasm

Needed due to LoongArch CPU model changes. Signed-off-by: Alex Rønne Petersen <alex@alexrp.com>

2 files changed, 13 insertions(+), 3 deletions(-)

stage1/zig.h+13-3
......@@ -4195,7 +4195,17 @@ static inline void* zig_x86_64_windows_teb(void) {
41954195
41964196#endif
41974197
4198#if defined(zig_x86)
4198#if defined(zig_loongarch)
4199
4200static inline void zig_loongarch_cpucfg(uint32_t word, uint32_t* result) {
4201#if defined(zig_gnuc_asm)
4202 __asm__("cpucfg %[result], %[word]" : [result] "=r" (result) : [word] "r" (word));
4203#else
4204 *result = 0;
4205#endif
4206}
4207
4208#elif defined(zig_x86)
41994209
42004210static inline void zig_x86_cpuid(uint32_t leaf_id, uint32_t subid, uint32_t* eax, uint32_t* ebx, uint32_t* ecx, uint32_t* edx) {
42014211#if defined(zig_msvc)
......@@ -4206,7 +4216,7 @@ static inline void zig_x86_cpuid(uint32_t leaf_id, uint32_t subid, uint32_t* eax
42064216 *ecx = (uint32_t)cpu_info[2];
42074217 *edx = (uint32_t)cpu_info[3];
42084218#elif defined(zig_gnuc_asm)
4209 __asm__("cpuid" : "=a"(*eax), "=b"(*ebx), "=c"(*ecx), "=d"(*edx) : "a"(leaf_id), "c"(subid));
4219 __asm__("cpuid" : "=a" (*eax), "=b" (*ebx), "=c" (*ecx), "=d" (*edx) : "a" (leaf_id), "c" (subid));
42104220#else
42114221 *eax = 0;
42124222 *ebx = 0;
......@@ -4221,7 +4231,7 @@ static inline uint32_t zig_x86_get_xcr0(void) {
42214231#elif defined(zig_gnuc_asm)
42224232 uint32_t eax;
42234233 uint32_t edx;
4224 __asm__("xgetbv" : "=a"(eax), "=d"(edx) : "c"(0));
4234 __asm__("xgetbv" : "=a" (eax), "=d" (edx) : "c" (0));
42254235 return eax;
42264236#else
42274237 *eax = 0;
stage1/zig1.wasm
Binary files a/stage1/zig1.wasm and b/stage1/zig1.wasm differ