mirror of
https://gitlab.com/qemu-project/openbios.git
synced 2024-02-13 08:34:06 +08:00
ppc: Use vector-local version of exception_return
On ppc64 the high 32 address bits are clear, so ba's sign extension cannot be used to branch to the ROM version of exception_return. Use a relative branch to the relocated version instead. This fixes relocation linker errors for ppc64. Signed-off-by: Andreas Färber <andreas.faerber@web.de> Acked-by: Alexander Graf <agraf@suse.de> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@942 f158a5a8-5612-0410-a976-696ce0be7e32
This commit is contained in:
committed by
Andreas Färber
parent
513b9da74b
commit
f85cd4220b
@@ -206,7 +206,7 @@ VECTOR( 0x300, "DSI" ):
|
|||||||
addi r3,r3,LO(dsi_exception)
|
addi r3,r3,LO(dsi_exception)
|
||||||
mtctr r3
|
mtctr r3
|
||||||
bctrl
|
bctrl
|
||||||
ba exception_return
|
b exception_return
|
||||||
|
|
||||||
VECTOR( 0x400, "ISI" ):
|
VECTOR( 0x400, "ISI" ):
|
||||||
EXCEPTION_PREAMBLE
|
EXCEPTION_PREAMBLE
|
||||||
@@ -214,7 +214,7 @@ VECTOR( 0x400, "ISI" ):
|
|||||||
addi r3,r3,LO(isi_exception)
|
addi r3,r3,LO(isi_exception)
|
||||||
mtctr r3
|
mtctr r3
|
||||||
bctrl
|
bctrl
|
||||||
ba exception_return
|
b exception_return
|
||||||
|
|
||||||
ILLEGAL_VECTOR( 0x500 )
|
ILLEGAL_VECTOR( 0x500 )
|
||||||
ILLEGAL_VECTOR( 0x600 )
|
ILLEGAL_VECTOR( 0x600 )
|
||||||
|
|||||||
Reference in New Issue
Block a user