summaryrefslogtreecommitdiff
path: root/lib/ultralib/src/os/settlbasid.s
blob: e7f31fbe1cbfef0b19f8bdd4a8403e05d545f3b8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include "PR/ultraerror.h"
#include "PR/R4300.h"
#include "sys/asm.h"
#include "sys/regdef.h"

.text
LEAF(osSetTLBASID)
#if defined (_DEBUG) && defined (__sgi)
.set noreorder
    bgez    a0, 1f
     nop
    b       2f
     nop
1:
    li      t1, 0xFF
.set noat
    slt     AT, t1, a0
    beqz    AT, 3f
     nop
.set at
2:
    move    a2, a0
    li      a0, ERR_OSSETTLBASID
    li      a1, 1
    j       __osError
     nop
3:
.set reorder
#endif
    MTC0(   a0, C0_ENTRYHI)
    jr      ra
END(osSetTLBASID)