[U-Boot] [Patch 1/2] MIPS: fix a latent bug on initialize $gp
Zhi-zhou Zhang
zhizhou.zh at gmail.com
Sat Nov 24 16:07:12 CET 2012
If bal is 8 bytes aligned, the _gp will not be 8 bytes aligned.
then the following ld insntrustion generates a Adel exception.
So here make _gp be always aligned in 8 bytes.
Signed-off-by: Zhi-zhou Zhang <zhizhou.zh at gmail.com>
---
arch/mips/cpu/mips64/start.S | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/arch/mips/cpu/mips64/start.S b/arch/mips/cpu/mips64/start.S
index 4112de7..8e8cc33 100644
--- a/arch/mips/cpu/mips64/start.S
+++ b/arch/mips/cpu/mips64/start.S
@@ -108,7 +108,10 @@ reset:
mtc0 t0, CP0_CONFIG
#endif
- /* Initialize $gp */
+ /* Initialize $gp, _gp must be 8 bytes algined. */
+ .align 3
+ nop
+ nop
bal 1f
nop
.dword _gp
--
1.7.9.5
More information about the U-Boot
mailing list