From 863968599c6a555efe580f9a354ecec24dd00159 Mon Sep 17 00:00:00 2001 From: Jacob Hansen Date: Fri, 28 Oct 2016 16:05:56 +0200 Subject: sparc: Adjust assembly to improve compability with LLVM - All references of %0 changed to %g0 - 'call label,0' changed to 'call label'. According to the sparc specification call does not take any registers - '.seg "text"' changed to '.section ".text"' - the synonym stub is replaced with stb - the synonym stuh is replaced with sth --- c/src/lib/libbsp/sparc/shared/irq_asm.S | 12 ++++++------ c/src/lib/libbsp/sparc/shared/start/start.S | 4 ++-- c/src/lib/libcpu/sparc/access/access.S | 6 +++--- c/src/lib/libcpu/sparc/reg_win/window.S | 2 +- c/src/lib/libcpu/sparc/syscall/syscall.S | 2 +- 5 files changed, 13 insertions(+), 13 deletions(-) diff --git a/c/src/lib/libbsp/sparc/shared/irq_asm.S b/c/src/lib/libbsp/sparc/shared/irq_asm.S index 17a77d648d..3d83431e54 100644 --- a/c/src/lib/libbsp/sparc/shared/irq_asm.S +++ b/c/src/lib/libbsp/sparc/shared/irq_asm.S @@ -459,7 +459,7 @@ dont_do_the_window: #if defined(RTEMS_PROFILING) sethi %hi(_SPARC_Counter), %o5 ld [%o5 + %lo(_SPARC_Counter)], %l4 - call %l4, 0 + call %l4 nop mov %o0, %o5 #else @@ -542,7 +542,7 @@ pil_fixed: ! o1 = 2nd arg = address of the ISF ! WAS LOADED WHEN ISF WAS SAVED!!! mov %l3, %o0 ! o0 = 1st arg = vector number - call %g4, 0 + call %g4 #if defined(RTEMS_PROFILING) mov %o5, %l3 ! save interrupt entry instant #else @@ -560,11 +560,11 @@ pil_fixed: cmp %l7, 0 bne profiling_not_outer_most_exit nop - call %l4, 0 ! Call _SPARC_Counter.counter_read + call %l4 ! Call _SPARC_Counter.counter_read mov %g1, %l4 ! Save previous interrupt status mov %o0, %o2 ! o2 = 3rd arg = interrupt exit instant mov %l3, %o1 ! o1 = 2nd arg = interrupt entry instant - call SYM(_Profiling_Outer_most_interrupt_entry_and_exit), 0 + call SYM(_Profiling_Outer_most_interrupt_entry_and_exit) mov %g6, %o0 ! o0 = 1st arg = per-CPU control profiling_not_outer_most_exit: #endif @@ -647,7 +647,7 @@ isr_dispatch: std %f28, [%sp + FP_FRAME_OFFSET_F28_F29] std %f30, [%sp + FP_FRAME_OFFSET_F3O_F31] st %fsr, [%sp + FP_FRAME_OFFSET_FSR] - call SYM(_Thread_Do_dispatch), 0 + call SYM(_Thread_Do_dispatch) mov %g6, %o0 /* @@ -677,7 +677,7 @@ isr_dispatch: non_fp_thread_dispatch: #endif - call SYM(_Thread_Do_dispatch), 0 + call SYM(_Thread_Do_dispatch) mov %g6, %o0 #if SPARC_HAS_FPU == 1 && defined(SPARC_USE_SAFE_FP_SUPPORT) diff --git a/c/src/lib/libbsp/sparc/shared/start/start.S b/c/src/lib/libbsp/sparc/shared/start/start.S index 6a9faaff5d..d9044b2130 100644 --- a/c/src/lib/libbsp/sparc/shared/start/start.S +++ b/c/src/lib/libbsp/sparc/shared/start/start.S @@ -74,7 +74,7 @@ #define SOFT_TRAP BAD_TRAP - .seg "text" + .section ".text" PUBLIC(start) .global start, __bsp_mem_init @@ -352,7 +352,7 @@ zerobss: bleu,a zerobss nop - mov %0, %o0 ! command line + mov %g0, %o0 ! command line call SYM(boot_card) ! does not return sub %sp, 0x60, %sp ! room for boot_card to save args diff --git a/c/src/lib/libcpu/sparc/access/access.S b/c/src/lib/libcpu/sparc/access/access.S index f52e693c16..cb8693b776 100644 --- a/c/src/lib/libcpu/sparc/access/access.S +++ b/c/src/lib/libcpu/sparc/access/access.S @@ -24,7 +24,7 @@ #include .align 4 - .seg "text" + .section ".text" PUBLIC(_ld8) PUBLIC(_ld16) PUBLIC(_ld32) @@ -61,12 +61,12 @@ SYM(_ld64): SYM(_st8): retl - stub %o1, [%o0] + stb %o1, [%o0] SYM(_st_be16): SYM(_st16): retl - stuh %o1, [%o0] + sth %o1, [%o0] SYM(_st_be32): SYM(_st32): diff --git a/c/src/lib/libcpu/sparc/reg_win/window.S b/c/src/lib/libcpu/sparc/reg_win/window.S index f57fbe18a8..b8745593f5 100644 --- a/c/src/lib/libcpu/sparc/reg_win/window.S +++ b/c/src/lib/libcpu/sparc/reg_win/window.S @@ -23,7 +23,7 @@ #include - .seg "text" + .section ".text" /* * Window overflow trap handler. * diff --git a/c/src/lib/libcpu/sparc/syscall/syscall.S b/c/src/lib/libcpu/sparc/syscall/syscall.S index d00aa03876..d5e1f43403 100644 --- a/c/src/lib/libcpu/sparc/syscall/syscall.S +++ b/c/src/lib/libcpu/sparc/syscall/syscall.S @@ -19,7 +19,7 @@ #include #include "syscall.h" - .seg "text" + .section ".text" /* * system call - halt * -- cgit v1.2.3