diff options
author | Yunsup Lee <yunsup@cs.berkeley.edu> | 2010-10-26 02:20:44 -0700 |
---|---|---|
committer | Yunsup Lee <yunsup@cs.berkeley.edu> | 2010-10-26 02:20:44 -0700 |
commit | 9fe7d4f656dd3c6bfe6be17d2e48eacb59ad00f5 (patch) | |
tree | 1a433c0148d3751fa90109da5632420fd9b4e152 /pk/entry.S | |
parent | 6ba19295c02fc04ddba539ef13fb411d3587a799 (diff) | |
download | pk-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.S | 10 |
1 files changed, 2 insertions, 8 deletions
@@ -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) |