| ... | @@ -79,6 +79,7 @@ const current_variant: Variant = switch (native_arch) { | ... | @@ -79,6 +79,7 @@ const current_variant: Variant = switch (native_arch) { |
| 79 | .mipsel, | 79 | .mipsel, |
| 80 | .mips64, | 80 | .mips64, |
| 81 | .mips64el, | 81 | .mips64el, |
| | 82 | .or1k, |
| 82 | .powerpc, | 83 | .powerpc, |
| 83 | .powerpcle, | 84 | .powerpcle, |
| 84 | .powerpc64, | 85 | .powerpc64, |
| ... | @@ -285,6 +286,13 @@ pub fn setThreadPointer(addr: usize) void { | ... | @@ -285,6 +286,13 @@ pub fn setThreadPointer(addr: usize) void { |
| 285 | const rc = @call(.always_inline, linux.syscall1, .{ .set_thread_area, addr }); | 286 | const rc = @call(.always_inline, linux.syscall1, .{ .set_thread_area, addr }); |
| 286 | assert(rc == 0); | 287 | assert(rc == 0); |
| 287 | }, | 288 | }, |
| | 289 | .or1k => { |
| | 290 | asm volatile ( |
| | 291 | \\ l.ori r10, %[addr], 0 |
| | 292 | : |
| | 293 | : [addr] "r" (addr), |
| | 294 | ); |
| | 295 | }, |
| 288 | .powerpc, .powerpcle => { | 296 | .powerpc, .powerpcle => { |
| 289 | asm volatile ( | 297 | asm volatile ( |
| 290 | \\ mr 2, %[addr] | 298 | \\ mr 2, %[addr] |