rework langinfo code for ABI compat and for use by time code
[musl] / src / thread / mips / syscall_cp.s
1 .set    noreorder
2
3 .global __syscall_cp_asm
4 .type   __syscall_cp_asm,@function
5 __syscall_cp_asm:
6 .global __cp_begin
7 __cp_begin:
8         lw      $4, 0($4)
9         bne     $4, $0, 2f
10         move    $2, $5
11         move    $4, $6
12         move    $5, $7
13         lw      $6, 16($sp)
14         lw      $7, 20($sp)
15         lw      $8, 24($sp)
16         lw      $9, 28($sp)
17         lw      $10,32($sp)
18         subu    $sp, $sp, 32
19         sw      $8, 16($sp)
20         sw      $9, 20($sp)
21         sw      $10,24($sp)
22         sw      $2, 28($sp)
23         lw      $2, 28($sp)
24         syscall
25 .global __cp_end
26 __cp_end:
27         beq     $7, $0, 1f
28         addu    $sp, $sp, 32
29         subu    $2, $0, $2
30 1:      jr      $ra
31         nop
32 2:      lw      $25, %call16(__cancel)($gp)
33         jr      $25
34         nop