forked from Imagelibrary/rtems
2002-11-01 Joel Sherrill <joel@OARcorp.com>
* score/cpu_asm.c, score/ispsh7045.c: Removed warnings.
This commit is contained in:
@@ -1,3 +1,7 @@
|
||||
2002-11-01 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* score/cpu_asm.c, score/ispsh7045.c: Removed warnings.
|
||||
|
||||
2002-10-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* .cvsignore: Reformat.
|
||||
|
||||
@@ -199,62 +199,62 @@ void __CPU_Context_switch(
|
||||
)
|
||||
{
|
||||
|
||||
asm volatile("
|
||||
.global __CPU_Context_switch
|
||||
__CPU_Context_switch:
|
||||
|
||||
add %0,r4
|
||||
|
||||
stc.l sr,@-r4
|
||||
stc.l gbr,@-r4
|
||||
mov.l r0,@-r4
|
||||
mov.l r1,@-r4
|
||||
mov.l r2,@-r4
|
||||
mov.l r3,@-r4
|
||||
|
||||
mov.l r6,@-r4
|
||||
mov.l r7,@-r4
|
||||
mov.l r8,@-r4
|
||||
mov.l r9,@-r4
|
||||
mov.l r10,@-r4
|
||||
mov.l r11,@-r4
|
||||
mov.l r12,@-r4
|
||||
mov.l r13,@-r4
|
||||
mov.l r14,@-r4
|
||||
sts.l pr,@-r4
|
||||
sts.l mach,@-r4
|
||||
sts.l macl,@-r4
|
||||
mov.l r15,@-r4
|
||||
|
||||
mov r5, r4"
|
||||
asm volatile("\n\
|
||||
.global __CPU_Context_switch\n\
|
||||
__CPU_Context_switch:\n\
|
||||
\n\
|
||||
add %0,r4\n\
|
||||
\n\
|
||||
stc.l sr,@-r4\n\
|
||||
stc.l gbr,@-r4\n\
|
||||
mov.l r0,@-r4\n\
|
||||
mov.l r1,@-r4\n\
|
||||
mov.l r2,@-r4\n\
|
||||
mov.l r3,@-r4\n\
|
||||
\n\
|
||||
mov.l r6,@-r4\n\
|
||||
mov.l r7,@-r4\n\
|
||||
mov.l r8,@-r4\n\
|
||||
mov.l r9,@-r4\n\
|
||||
mov.l r10,@-r4\n\
|
||||
mov.l r11,@-r4\n\
|
||||
mov.l r12,@-r4\n\
|
||||
mov.l r13,@-r4\n\
|
||||
mov.l r14,@-r4\n\
|
||||
sts.l pr,@-r4\n\
|
||||
sts.l mach,@-r4\n\
|
||||
sts.l macl,@-r4\n\
|
||||
mov.l r15,@-r4\n\
|
||||
\n\
|
||||
mov r5, r4"\n\
|
||||
:: "I" (sizeof(Context_Control))
|
||||
);
|
||||
|
||||
asm volatile("
|
||||
.global __CPU_Context_restore
|
||||
__CPU_Context_restore:
|
||||
mov.l @r4+,r15
|
||||
lds.l @r4+,macl
|
||||
lds.l @r4+,mach
|
||||
lds.l @r4+,pr
|
||||
mov.l @r4+,r14
|
||||
mov.l @r4+,r13
|
||||
mov.l @r4+,r12
|
||||
mov.l @r4+,r11
|
||||
mov.l @r4+,r10
|
||||
mov.l @r4+,r9
|
||||
mov.l @r4+,r8
|
||||
mov.l @r4+,r7
|
||||
mov.l @r4+,r6
|
||||
|
||||
mov.l @r4+,r3
|
||||
mov.l @r4+,r2
|
||||
mov.l @r4+,r1
|
||||
mov.l @r4+,r0
|
||||
ldc.l @r4+,gbr
|
||||
ldc.l @r4+,sr
|
||||
|
||||
rts
|
||||
asm volatile("\n\
|
||||
.global __CPU_Context_restore\n\
|
||||
__CPU_Context_restore:\n\
|
||||
mov.l @r4+,r15\n\
|
||||
lds.l @r4+,macl\n\
|
||||
lds.l @r4+,mach\n\
|
||||
lds.l @r4+,pr\n\
|
||||
mov.l @r4+,r14\n\
|
||||
mov.l @r4+,r13\n\
|
||||
mov.l @r4+,r12\n\
|
||||
mov.l @r4+,r11\n\
|
||||
mov.l @r4+,r10\n\
|
||||
mov.l @r4+,r9\n\
|
||||
mov.l @r4+,r8\n\
|
||||
mov.l @r4+,r7\n\
|
||||
mov.l @r4+,r6\n\
|
||||
\n\
|
||||
mov.l @r4+,r3\n\
|
||||
mov.l @r4+,r2\n\
|
||||
mov.l @r4+,r1\n\
|
||||
mov.l @r4+,r0\n\
|
||||
ldc.l @r4+,gbr\n\
|
||||
ldc.l @r4+,sr\n\
|
||||
\n\
|
||||
rts\n\
|
||||
nop" );
|
||||
}
|
||||
|
||||
|
||||
@@ -107,58 +107,58 @@ _oei_isp, /* I/O Port: irq 156*/
|
||||
* We try to work around this problem by using the macro below.
|
||||
*/
|
||||
#define isp( name, number, func)\
|
||||
asm (".global _"Str(name)"\n\t" \
|
||||
"_"Str(name)": \n\t" \
|
||||
" mov.l r0,@-r15 \n\t" \
|
||||
" mov.l r1,@-r15 \n\t" \
|
||||
" mov.l r2,@-r15 \n\t" \
|
||||
" mov.l r3,@-r15 \n\t" \
|
||||
" mov.l r4,@-r15 \n\t" \
|
||||
" mov.l r5,@-r15 \n\t" \
|
||||
" mov.l r6,@-r15 \n\t" \
|
||||
" mov.l r7,@-r15 \n\t" \
|
||||
" mov.l r14,@-r15 \n\t" \
|
||||
" sts.l pr,@-r15 \n\t" \
|
||||
" sts.l mach,@-r15 \n\t" \
|
||||
" sts.l macl,@-r15 \n\t" \
|
||||
" mov r15,r14 \n\t" \
|
||||
" mov.l "Str(name)"_v, r2 \n\t" \
|
||||
" mov.l "Str(name)"_k, r1\n\t" \
|
||||
" jsr @r1 \n\t" \
|
||||
" mov r2,r4 \n\t" \
|
||||
" mov r14,r15 \n\t" \
|
||||
" lds.l @r15+,macl \n\t" \
|
||||
" lds.l @r15+,mach \n\t" \
|
||||
" lds.l @r15+,pr \n\t" \
|
||||
" mov.l @r15+,r14 \n\t" \
|
||||
" mov.l @r15+,r7 \n\t" \
|
||||
" mov.l @r15+,r6 \n\t" \
|
||||
" mov.l @r15+,r5 \n\t" \
|
||||
" mov.l @r15+,r4 \n\t" \
|
||||
" mov.l @r15+,r3 \n\t" \
|
||||
" mov.l @r15+,r2 \n\t" \
|
||||
" mov.l @r15+,r1 \n\t" \
|
||||
" mov.l @r15+,r0 \n\t" \
|
||||
" rte \n\t" \
|
||||
" nop \n\t" \
|
||||
" .align 2 \n\t" \
|
||||
#name"_k: \n\t" \
|
||||
".long "Str(func)"\n\t" \
|
||||
#name"_v: \n\t" \
|
||||
asm (".global _"Str(name)"\n\t"
|
||||
"_"Str(name)": \n\t"
|
||||
" mov.l r0,@-r15 \n\t"
|
||||
" mov.l r1,@-r15 \n\t"
|
||||
" mov.l r2,@-r15 \n\t"
|
||||
" mov.l r3,@-r15 \n\t"
|
||||
" mov.l r4,@-r15 \n\t"
|
||||
" mov.l r5,@-r15 \n\t"
|
||||
" mov.l r6,@-r15 \n\t"
|
||||
" mov.l r7,@-r15 \n\t"
|
||||
" mov.l r14,@-r15 \n\t"
|
||||
" sts.l pr,@-r15 \n\t"
|
||||
" sts.l mach,@-r15 \n\t"
|
||||
" sts.l macl,@-r15 \n\t"
|
||||
" mov r15,r14 \n\t"
|
||||
" mov.l "Str(name)"_v, r2 \n\t"
|
||||
" mov.l "Str(name)"_k, r1\n\t"
|
||||
" jsr @r1 \n\t"
|
||||
" mov r2,r4 \n\t"
|
||||
" mov r14,r15 \n\t"
|
||||
" lds.l @r15+,macl \n\t"
|
||||
" lds.l @r15+,mach \n\t"
|
||||
" lds.l @r15+,pr \n\t"
|
||||
" mov.l @r15+,r14 \n\t"
|
||||
" mov.l @r15+,r7 \n\t"
|
||||
" mov.l @r15+,r6 \n\t"
|
||||
" mov.l @r15+,r5 \n\t"
|
||||
" mov.l @r15+,r4 \n\t"
|
||||
" mov.l @r15+,r3 \n\t"
|
||||
" mov.l @r15+,r2 \n\t"
|
||||
" mov.l @r15+,r1 \n\t"
|
||||
" mov.l @r15+,r0 \n\t"
|
||||
" rte \n\t"
|
||||
" nop \n\t"
|
||||
" .align 2 \n\t"
|
||||
#name"_k: \n\t"
|
||||
".long "Str(func)"\n\t"
|
||||
#name"_v: \n\t"
|
||||
".long "Str(number));
|
||||
|
||||
/************************************************
|
||||
* Dummy interrupt service procedure for
|
||||
* interrupts being not allowed --> Trap 34
|
||||
************************************************/
|
||||
asm(" .section .text
|
||||
.global __dummy_isp
|
||||
__dummy_isp:
|
||||
mov.l r14,@-r15
|
||||
mov r15, r14
|
||||
trapa #34
|
||||
mov.l @r15+,r14
|
||||
rte
|
||||
asm(" .section .text\n\
|
||||
.global __dummy_isp\n\
|
||||
__dummy_isp:\n\
|
||||
mov.l r14,@-r15\n\
|
||||
mov r15, r14\n\
|
||||
trapa #34\n\
|
||||
mov.l @r15+,r14\n\
|
||||
rte\n\
|
||||
nop");
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
Reference in New Issue
Block a user