Commit e6fe7a329a
Changed files (1)
lib
std
os
linux
lib/std/os/linux/tls.zig
@@ -84,6 +84,7 @@ const current_variant: Variant = switch (native_arch) {
.riscv32,
.riscv64,
=> .I_modified,
+ .hexagon,
.s390x,
.sparc64,
.x86,
@@ -246,6 +247,13 @@ pub fn setThreadPointer(addr: usize) void {
const rc = linux.syscall1(.set_thread_area, addr);
assert(rc == 0);
},
+ .hexagon => {
+ asm volatile (
+ \\ ugp = %[addr]
+ :
+ : [addr] "r" (addr),
+ );
+ },
.loongarch32, .loongarch64 => {
asm volatile (
\\ mv tp, %[addr]