aboutsummaryrefslogtreecommitdiff
path: root/pk/entry.S
diff options
context:
space:
mode:
authorYunsup Lee <yunsup@cs.berkeley.edu>2010-10-26 02:20:44 -0700
committerYunsup Lee <yunsup@cs.berkeley.edu>2010-10-26 02:20:44 -0700
commit9fe7d4f656dd3c6bfe6be17d2e48eacb59ad00f5 (patch)
tree1a433c0148d3751fa90109da5632420fd9b4e152 /pk/entry.S
parent6ba19295c02fc04ddba539ef13fb411d3587a799 (diff)
downloadpk-9fe7d4f656dd3c6bfe6be17d2e48eacb59ad00f5.zip
pk-9fe7d4f656dd3c6bfe6be17d2e48eacb59ad00f5.tar.gz
pk-9fe7d4f656dd3c6bfe6be17d2e48eacb59ad00f5.tar.bz2
[pk,sim,xcc] get rid of at register, introduce tp register
Diffstat (limited to 'pk/entry.S')
-rw-r--r--pk/entry.S10
1 files changed, 2 insertions, 8 deletions
diff --git a/pk/entry.S b/pk/entry.S
index b128e93..628ecd5 100644
--- a/pk/entry.S
+++ b/pk/entry.S
@@ -49,7 +49,7 @@ save_tf: # write the trap frame onto the stack
mfpcr $x2,ASM_CR(PCR_K0)
STORE $x2,31*REGBYTES($x1) # $ra is actually in $PCR_K0
- # get sr, epc, badvaddr, cause, cr29 (tid)
+ # get sr, epc, badvaddr, cause
mfpcr $x2,ASM_CR(PCR_SR) # sr
STORE $x2,32*REGBYTES($x1)
mfpcr $x3,ASM_CR(PCR_EPC) # epc
@@ -58,13 +58,11 @@ save_tf: # write the trap frame onto the stack
STORE $x2,34*REGBYTES($x1)
mfpcr $x2,ASM_CR(PCR_CAUSE) # cause
STORE $x2,35*REGBYTES($x1)
- mfcr $x2,ASM_CR(29) # cr29 (tid)
- STORE $x2,36*REGBYTES($x1)
# get insn
and $x3,$x3,~3
lw $x2,0($x3)
- STORE $x2, 37*REGBYTES($x1)
+ STORE $x2, 36*REGBYTES($x1)
jr $ra
.end save_tf
@@ -111,10 +109,6 @@ pop_tf: # write the trap frame onto the stack
LOAD $x30,30*REGBYTES($x1)
LOAD $x31,31*REGBYTES($x1)
- # restore cr29 (tid)
- LOAD $x2,35*REGBYTES($x1)
- mtcr $x2,ASM_CR(29)
-
# gtfo!
LOAD $x2,33*REGBYTES($x1)
mtpcr $x2,ASM_CR(PCR_EPC)