stack was misaligned
This commit is contained in:
@@ -554,7 +554,9 @@ access_mmu:
|
||||
move.l MCF_MMU_MMUAR,d0
|
||||
cmp.l #__FASTRAM_END,d0 // above max User RAM area?
|
||||
bge bus_error // -> bus error
|
||||
bra _mmutr_miss // else we have an MMU TLB miss
|
||||
bsr _mmutr_miss // else we have an MMU TLB miss
|
||||
move.l (sp)+,d0 // restore register
|
||||
rte
|
||||
|
||||
bus_error:
|
||||
move.l (sp)+,d0 // restore register
|
||||
|
||||
@@ -345,7 +345,7 @@ void mmu_init(void)
|
||||
MCF_MMU_MMUOR_UAA; /* update allocation address field */
|
||||
}
|
||||
|
||||
void __attribute__((interrupt)) mmutr_miss(void)
|
||||
void mmutr_miss(void)
|
||||
{
|
||||
register uint32_t address asm("d0");
|
||||
|
||||
@@ -367,6 +367,7 @@ void __attribute__((interrupt)) mmutr_miss(void)
|
||||
MCF_MMU_MMUOR = MCF_MMU_MMUOR_ITLB | /* instruction */
|
||||
MCF_MMU_MMUOR_ACC | /* access TLB */
|
||||
MCF_MMU_MMUOR_UAA; /* update allocation address field */
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user