]> git.lizzy.rs Git - plan9front.git/blobdiff - sys/src/9/omap4/l.s
kernel: fix fairshare formula in comment (thanks erik)
[plan9front.git] / sys / src / 9 / omap4 / l.s
index 1a392a87071618a03362f2165f9a9a52c84b6051..f6282431e359572c969d8dcf62170af5d4ff2e20 100644 (file)
@@ -51,7 +51,7 @@ uartloop:
        EWAVE('n')
 
        MRC     CpSC, 0, R1, C(CpCONTROL), C(0), CpMainctl
-       ORR     $(CpCmmu|CpChv|CpCsw), R1
+       ORR     $(CpCmmu|CpChv|CpCsw|CpCicache), R1
        MCR     CpSC, 0, R1, C(CpCONTROL), C(0), CpMainctl
 
        EWAVE(' ')
@@ -59,7 +59,7 @@ uartloop:
        BL      _jumphi(SB)
        
        EWAVE('9')
-       
+
        MOVW    $setR12(SB), R12
        MOVW    $KTZERO, R13
        
@@ -226,12 +226,11 @@ TEXT _trap(SB), 1, $-4
        MOVW    R13, R0
        SUB     $8, R13
        BL trap(SB)
-       ADD     $8, R13
-       MOVW    64(R13), R0
+       MOVW    72(R13), R0
        AND     $PsrMask, R0
        CMP     $PsrMusr, R0
-       MOVW.EQ R13, R0
-       B.EQ    gotouser
+       B.EQ    _forkret
+       ADD     $8, R13
        MOVW    68(R13), R0
        MOVW    R0, 60(R13)
        MOVW    64(R13), R0
@@ -255,11 +254,12 @@ TEXT _syscall(SB), 1, $-4
        BL      syscall(SB)
 
 TEXT forkret(SB), 1, $-4
+_forkret:
        ADD     $8, R13
        MOVW    R13, R0
+       ADD     $72, R13
 
 TEXT touser(SB), 1, $-4
-gotouser:
        ADD     $52, R0
        MOVM.IA.S       (R0), [R13-R14]
        SUB     $52, R0
@@ -296,3 +296,7 @@ TEXT getdfar(SB), 0, $-4
 TEXT getifar(SB), 0, $-4
        MRC     CpSC, 0, R0, C(6), C(0), 2
        RET
+
+TEXT getr13(SB), 0, $-4
+       MOVW    R13, R0
+       RET