mirror of
https://github.com/lowRISC/ibex.git
synced 2025-04-20 11:57:12 -04:00
If the DUT comes out of reset and immediately jumps into debug mode, the first routine executed is to push the gpr's to the kernel stack. The register used as the effective stack-pointer is initialized to zero, and the routine reserves the address space (XLEN/4) * 31 to push the GPR's (excluding x0). This routine however assumes that the original value in the sp register is valid to be stored to. This is often not the case out of reset, when it is 0x00000000. Therefore an address range from 0xffffff80 up to and including 0x00000000 (wrapping) is stored to. This patch reserves 32 words instead, preventing the final gpr from writing to an invalid addr in this case. Signed-off-by: Harry Callahan <hcallahan@lowrisc.org> [RISCV-DV] Functional changes to fix nested_interrupt_test |
||
---|---|---|
.. | ||
eembc_coremark | ||
google_riscv-dv | ||
lowrisc_ip | ||
patches | ||
eembc_coremark.lock.hjson | ||
google_riscv-dv.lock.hjson | ||
google_riscv-dv.vendor.hjson | ||
lowrisc_ip.lock.hjson | ||
lowrisc_ip.vendor.hjson |