aboutsummaryrefslogtreecommitdiff
path: root/arch/m68k/cpu
diff options
context:
space:
mode:
authorAngelo Dureghello2023-02-24 01:43:19 +0100
committerAngelo Dureghello2023-03-15 01:38:19 +0100
commitd157a5725a6981eb5e1de2c07072c1214702741f (patch)
treebff398bef0d19362685440071f3a8a7d627d0983 /arch/m68k/cpu
parentcc1c2a24230343ed5213a9c4476a907c56d23082 (diff)
m68k: use longword-based jumps
Increasing of binary size requires longword-based jumps. Signed-off-by: Angelo Durgehello <angelo.dureghello@timesys.com>
Diffstat (limited to 'arch/m68k/cpu')
-rw-r--r--arch/m68k/cpu/mcf530x/start.S18
1 files changed, 12 insertions, 6 deletions
diff --git a/arch/m68k/cpu/mcf530x/start.S b/arch/m68k/cpu/mcf530x/start.S
index dbe2b54e410..cef8d79aad1 100644
--- a/arch/m68k/cpu/mcf530x/start.S
+++ b/arch/m68k/cpu/mcf530x/start.S
@@ -132,7 +132,8 @@ _start:
* then (and always) gd struct space will be reserved
*/
move.l %sp, -(%sp)
- bsr board_init_f_alloc_reserve
+ move.l #board_init_f_alloc_reserve, %a1
+ jsr (%a1)
/* update stack and frame-pointers */
move.l %d0, %sp
@@ -140,14 +141,17 @@ _start:
/* initialize reserved area */
move.l %d0, -(%sp)
- bsr board_init_f_init_reserve
+ move.l #board_init_f_init_reserve, %a1
+ jsr (%a1)
/* run low-level CPU init code (from flash) */
- bsr cpu_init_f
+ move.l #cpu_init_f, %a1
+ jsr (%a1)
/* run low-level board init code (from flash) */
clr.l %sp@-
- bsr board_init_f
+ move.l #board_init_f, %a1
+ jsr (%a1)
/* board_init_f() does not return */
@@ -239,7 +243,8 @@ _fault:
_exc_handler:
SAVE_ALL
movel %sp,%sp@-
- bsr exc_handler
+ move.l #exc_handler, %a1
+ jsr (%a1)
addql #4,%sp
RESTORE_ALL
@@ -247,7 +252,8 @@ _exc_handler:
_int_handler:
SAVE_ALL
movel %sp,%sp@-
- bsr int_handler
+ move.l #int_handler, %a1
+ jsr (%a1)
addql #4,%sp
RESTORE_ALL