risc-v: disable linker relaxations during gp init

This commit is contained in:
Yannis Huber
2020-07-07 09:37:00 +02:00
committed by Ayke
parent 0b94e486c1
commit 7ed7e6cb11
+5
View File
@@ -9,7 +9,12 @@ _start:
// Load the globals pointer. The program will load pointers relative to this
// register, so it must be set to the right value on startup.
// See: https://gnu-mcu-eclipse.github.io/arch/riscv/programmer/#the-gp-global-pointer-register
// Linker relaxations must be disabled to avoid the initialization beign
// relaxed with an uninitialized global pointer: mv gp, gp
.option push
.option norelax
la gp, __global_pointer$
.option pop
// Jump to runtime.main
call main