| ... | ... | @@ -73,6 +73,8 @@ const current_variant: Variant = switch (native_arch) { |
| 73 | 73 | .csky, |
| 74 | 74 | .microblaze, |
| 75 | 75 | .microblazeel, |
| 76 | .sh, |
| 77 | .sheb, |
| 76 | 78 | .thumb, |
| 77 | 79 | .thumbeb, |
| 78 | 80 | => .I_original, |
| ... | ... | @@ -144,6 +146,8 @@ const AbiTcb = switch (current_variant) { |
| 144 | 146 | .armeb, |
| 145 | 147 | .microblaze, |
| 146 | 148 | .microblazeel, |
| 149 | .sh, |
| 150 | .sheb, |
| 147 | 151 | .thumb, |
| 148 | 152 | .thumbeb, |
| 149 | 153 | => extern struct { |
| ... | ... | @@ -337,6 +341,13 @@ pub fn setThreadPointer(addr: usize) void { |
| 337 | 341 | : [addr] "r" (addr), |
| 338 | 342 | : .{ .r0 = true }); |
| 339 | 343 | }, |
| 344 | .sh, .sheb => { |
| 345 | asm volatile ( |
| 346 | \\ ldc gbr, %[addr] |
| 347 | : |
| 348 | : [addr] "r" (addr), |
| 349 | ); |
| 350 | }, |
| 340 | 351 | .sparc, .sparc64 => { |
| 341 | 352 | asm volatile ( |
| 342 | 353 | \\ mov %[addr], %%g7 |