Changeset View
Changeset View
Standalone View
Standalone View
sys/powerpc/aim/trap_subr64.S
Show First 20 Lines • Show All 799 Lines • ▼ Show 20 Lines | |||||
* Now the kdb trap catching code. | * Now the kdb trap catching code. | ||||
*/ | */ | ||||
dbtrap: | dbtrap: | ||||
/* Write the trap vector to SPRG3 by computing LR & 0xff00 */ | /* Write the trap vector to SPRG3 by computing LR & 0xff00 */ | ||||
mflr %r1 | mflr %r1 | ||||
andi. %r1,%r1,0xff00 | andi. %r1,%r1,0xff00 | ||||
mtsprg3 %r1 | mtsprg3 %r1 | ||||
ld %r1,TRAP_TOCBASE(0) /* get new SP */ | GET_TOCBASE(%r1) | ||||
ld %r1,TOC_REF(tmpstk)(%r1) | ld %r1,TOC_REF(trapstk)(%r1) | ||||
addi %r1,%r1,(TMPSTKSZ-48) | addi %r1,%r1,(TRAPSTKSZ-48) | ||||
FRAME_SETUP(PC_DBSAVE) | FRAME_SETUP(PC_DBSAVE) | ||||
/* Call C trap code: */ | /* Call C trap code: */ | ||||
GET_TOCBASE(%r2) | GET_TOCBASE(%r2) | ||||
addi %r3,%r1,48 | addi %r3,%r1,48 | ||||
bl CNAME(db_trap_glue) | bl CNAME(db_trap_glue) | ||||
nop | nop | ||||
or. %r3,%r3,%r3 | or. %r3,%r3,%r3 | ||||
▲ Show 20 Lines • Show All 65 Lines • Show Last 20 Lines |