diff options
| author | Derek Hensley <hensley.derek58@gmail.com> | 2025-02-21 16:03:51 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-02-21 17:03:51 -0700 |
| commit | 8c6ae625aef6d07741cd8925f422f43ae24b198c (patch) | |
| tree | 741fafdf5cf11006a23a9019451082c269fe4922 /lib/ultralib/src/os/maptlb.s | |
| parent | f013a028f42a1b11134bc5f22f28e9f48236b6f0 (diff) | |
Ultralib Update (#233)
* git subrepo pull (merge) lib/ultralib
subrepo:
subdir: "lib/ultralib"
merged: "74f0eee"
upstream:
origin: "git@github.com:decompals/ultralib.git"
branch: "main"
commit: "2717d45"
git-subrepo:
version: "0.4.9"
origin: "https://github.com/ingydotnet/git-subrepo"
commit: "cce3d93"
* New ultralib fixes
* Update some includes in tools
* git subrepo commit (merge) lib/ultralib
subrepo:
subdir: "lib/ultralib"
merged: "3a702eaf"
upstream:
origin: "git@github.com:decompals/ultralib.git"
branch: "main"
commit: "48f9f908"
git-subrepo:
version: "0.4.9"
origin: "git@github.com:ingydotnet/git-subrepo.git"
commit: "ea10886"
* Update warnings file
Diffstat (limited to 'lib/ultralib/src/os/maptlb.s')
| -rw-r--r-- | lib/ultralib/src/os/maptlb.s | 127 |
1 files changed, 63 insertions, 64 deletions
diff --git a/lib/ultralib/src/os/maptlb.s b/lib/ultralib/src/os/maptlb.s index 20125b6..be8b784 100644 --- a/lib/ultralib/src/os/maptlb.s +++ b/lib/ultralib/src/os/maptlb.s @@ -13,90 +13,90 @@ .set noreorder LEAF(osMapTLB) #if defined (_DEBUG) && defined (__sgi) - bgez index, 1f - nop - b 2f - nop + bgez index, 1f + nop + b 2f + nop 1: - li t0, 0x1F + li t0, 0x1F .set noat - slt AT, index, t0 - bnez AT, 3f - nop + slt AT, index, t0 + bnez AT, 3f + nop .set at 2: - move a2, a0 - li a0, ERR_OSMAPTLB_INDEX - li a1, 1 - j __osError - nop + move a2, a0 + li a0, ERR_OSMAPTLB_INDEX + li a1, 1 + j __osError + nop 3: - lw t0, asid - li t1, -1 + lw t0, asid + li t1, -1 .set noat - slt AT, t0, t1 - beqz AT, 4f - nop + slt AT, t0, t1 + beqz AT, 4f + nop .set at - b 5f - nop + b 5f + nop 4: - li t1, 0xFF + li t1, 0xFF .set noat - slt AT, t1, t0 - beqz AT, 6f - nop + slt AT, t1, t0 + beqz AT, 6f + nop .set at 5: - move a2, t0 - li a0, ERR_OSMAPTLB_ASID - li a1, 1 - j __osError - nop + move a2, t0 + li a0, ERR_OSMAPTLB_ASID + li a1, 1 + j __osError + nop 6: .set reorder #endif - STAY2(mfc0 t0, C0_ENTRYHI) - STAY2(mtc0 index, C0_INX) - STAY2(mtc0 pm, C0_PAGEMASK) + MFC0( t0, C0_ENTRYHI) + MTC0( index, C0_INX) + MTC0( pm, C0_PAGEMASK) .set noreorder - lw t1, asid - beq t1, -1, 7f - li ta0, TLBLO_G - li t2, TLBLO_NONCOHRNT | TLBLO_D | TLBLO_V - b 8f - or vaddr, vaddr, t1 + lw t1, asid + beq t1, -1, 7f + li ta0, TLBLO_G + li t2, (TLBLO_NONCOHRNT | TLBLO_D | TLBLO_V) + b 8f + or vaddr, vaddr, t1 .set reorder 7: - li t2, TLBLO_NONCOHRNT | TLBLO_D | TLBLO_V | TLBLO_G + li t2, (TLBLO_NONCOHRNT | TLBLO_D | TLBLO_V | TLBLO_G) 8: - STAY2(mtc0 vaddr, C0_ENTRYHI) - beq evenpaddr, -1, 9f - #nop - srl t3, evenpaddr, TLBLO_PFNSHIFT - or t3, t3, t2 - STAY2(mtc0 t3, C0_ENTRYLO0) - b 10f - #nop + MTC0( vaddr, C0_ENTRYHI) + beq evenpaddr, -1, 9f + + srl t3, evenpaddr, TLBLO_PFNSHIFT + or t3, t3, t2 + MTC0( t3, C0_ENTRYLO0) + b 10f + 9: - STAY2(mtc0 ta0, C0_ENTRYLO0) + MTC0( ta0, C0_ENTRYLO0) 10: - lw t3, oddpaddr - beq t3, -1, 11f - #nop - srl t3, t3, TLBLO_PFNSHIFT - or t3, t3, t2 - STAY2(mtc0 t3, C0_ENTRYLO1) - b 12f - #nop + lw t3, oddpaddr + beq t3, -1, 11f + + srl t3, t3, TLBLO_PFNSHIFT + or t3, t3, t2 + MTC0( t3, C0_ENTRYLO1) + b 12f + 11: - STAY2(mtc0 ta0, C0_ENTRYLO1) - bne evenpaddr, -1, 12f - #nop - li t3, K0BASE - STAY2(mtc0 t3, C0_ENTRYHI) + MTC0( ta0, C0_ENTRYLO1) + bne evenpaddr, -1, 12f + + li t3, K0BASE + MTC0( t3, C0_ENTRYHI) 12: .set noreorder nop @@ -105,7 +105,6 @@ LEAF(osMapTLB) nop nop nop - STAY2(mtc0 t0, C0_ENTRYHI) - jr ra - #nop + MTC0( t0, C0_ENTRYHI) + jr ra END(osMapTLB) |
