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
This commit is contained in:
Jacob Hansen
2016-10-28 16:05:56 +02:00
committed by Daniel Hellstrom
parent 1ea73e2b5f
commit 863968599c
5 changed files with 13 additions and 13 deletions

View File

@@ -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)

View File

@@ -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

View File

@@ -24,7 +24,7 @@
#include <rtems/asm.h>
.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):

View File

@@ -23,7 +23,7 @@
#include <rtems/asm.h>
.seg "text"
.section ".text"
/*
* Window overflow trap handler.
*

View File

@@ -19,7 +19,7 @@
#include <rtems/asm.h>
#include "syscall.h"
.seg "text"
.section ".text"
/*
* system call - halt
*