URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
Compare Revisions
- This comparison shows the changes necessary to convert path
/openrisc/tags/gnu-src/gdb-6.8/pre-binutils-2.20.1-sync/sim/testsuite/sim/arm/thumb
- from Rev 157 to Rev 223
- ↔ Reverse comparison
Rev 157 → Rev 223
/sbc.cgs
0,0 → 1,12
# arm testcase for sbc $rd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global alu_sbc |
alu_sbc: |
sbc r0,r0 |
|
pass |
/tst.cgs
0,0 → 1,12
# arm testcase for tst $rd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global alu_tst |
alu_tst: |
tst r0,r0 |
|
pass |
/bpl.cgs
0,0 → 1,12
# arm testcase for bpl $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bpl |
bpl: |
bpl footext |
|
pass |
/bls.cgs
0,0 → 1,12
# arm testcase for bls $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bls |
bls: |
bls footext |
|
pass |
/lda-sp.cgs
0,0 → 1,12
# arm testcase for add ${bit10-rd},sp,$word8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global lda_sp |
lda_sp: |
add r0,sp,0 |
|
pass |
/blt.cgs
0,0 → 1,12
# arm testcase for blt $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global blt |
blt: |
blt footext |
|
pass |
/ldr-pc.cgs
0,0 → 1,12
# arm testcase for ldr ${bit10-rd},[pc,#$word8] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global ldr_pc |
ldr_pc: |
ldr r0,[pc,#0] |
|
pass |
/ldr.cgs
0,0 → 1,12
# arm testcase for ldr $rd,[$rb,$ro] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global ldr |
ldr: |
ldr r0,[r0,r0] |
|
pass |
/str-imm.cgs
0,0 → 1,12
# arm testcase for str $rd,[$rb,#${offset5-7}] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global str_imm |
str_imm: |
str r0,[r0,#0] |
|
pass |
/allthumb.exp
0,0 → 1,21
# ARM simulator testsuite. |
|
if { [istarget arm*-*-*] |
|| [istarget thumb*-*-*] } { |
# load support procs (none yet) |
# load_lib cgen.exp |
|
# all machines |
set all_machs "arm7tdmi" |
|
# The .cgs suffix is for "cgen .s". |
foreach src [lsort [glob -nocomplain $srcdir/$subdir/*.cgs]] { |
# If we're only testing specific files and this isn't one of them, |
# skip it. |
if ![runtest_file_p $runtests $src] { |
continue |
} |
|
run_sim_test $src $all_machs |
} |
} |
/strb-imm.cgs
0,0 → 1,12
# arm testcase for strb $rd,[$rb,#$offset5] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global strb_imm |
strb_imm: |
strb r0,[r0,#0] |
|
pass |
/cmp-hd-rs.cgs
0,0 → 1,12
# arm testcase for cmp $hd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global cmp_hd_rs |
cmp_hd_rs: |
cmp r8,r0 |
|
pass |
/bic.cgs
0,0 → 1,12
# arm testcase for bic $rd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global alu_bic |
alu_bic: |
bic r0,r0 |
|
pass |
/strh-imm.cgs
0,0 → 1,12
# arm testcase for strh $rd,[$rb,#${offset5-6}] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global strh_imm |
strh_imm: |
strh r0,[r0,#0] |
|
pass |
/lda-pc.cgs
0,0 → 1,12
# arm testcase for add ${bit10-rd},pc,$word8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global lda_pc |
lda_pc: |
add r0,pc,0 |
|
pass |
/mvn.cgs
0,0 → 1,12
# arm testcase for mvn $rd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global alu_mvn |
alu_mvn: |
mvn r0,r0 |
|
pass |
/orr.cgs
0,0 → 1,12
# arm testcase for orr $rd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global alu_orr |
alu_orr: |
orr r0,r0 |
|
pass |
/mov-hd-hs.cgs
0,0 → 1,12
# arm testcase for mov $hd,$hs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global mov_hd_hs |
mov_hd_hs: |
mov r8,r8 |
|
pass |
/subi.cgs
0,0 → 1,12
# arm testcase for sub $rd,$rs,#$offset3 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global subi |
subi: |
sub r0,r0,#0 |
|
pass |
/add-hd-rs.cgs
0,0 → 1,12
# arm testcase for add $hd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global add_hd_rs |
add_hd_rs: |
add r8,r0 |
|
pass |
/ldr-sprel.cgs
0,0 → 1,12
# arm testcase for ldr ${bit10-rd},[sp,#$word8] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global ldr_sprel |
ldr_sprel: |
ldr r0,[sp,#0] |
|
pass |
/beq.cgs
0,0 → 1,12
# arm testcase for beq $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global beq |
beq: |
beq footext |
|
pass |
/bmi.cgs
0,0 → 1,12
# arm testcase for bmi $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bmi |
bmi: |
bmi footext |
|
pass |
/neg.cgs
0,0 → 1,12
# arm testcase for neg $rd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global alu_neg |
alu_neg: |
neg r0,r0 |
|
pass |
/mov-rd-hs.cgs
0,0 → 1,12
# arm testcase for mov $rd,$hs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global mov_rd_hs |
mov_rd_hs: |
mov r0,r8 |
|
pass |
/push.cgs
0,0 → 1,12
# arm testcase for push {$rlist} |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global push |
push: |
push {0} |
|
pass |
/b.cgs
0,0 → 1,12
# arm testcase for b $offset11 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global b |
b: |
b footext |
|
pass |
/ldrb.cgs
0,0 → 1,12
# arm testcase for ldrb $rd,[$rb,$ro] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global ldrb |
ldrb: |
ldrb r0,[r0,r0] |
|
pass |
/eor.cgs
0,0 → 1,12
# arm testcase for eor $rd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global alu_eor |
alu_eor: |
eor r0,r0 |
|
pass |
/asr.cgs
0,0 → 1,14
# arm testcase for asr $rd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global alu_asr |
alu_asr: |
asr r0,r0 |
|
# FIXME: Also asr $rd,$rs,#$offset5 |
|
pass |
/ldmia.cgs
0,0 → 1,12
# arm testcase for ldmia $rb!,{$rlist} |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global ldmia |
ldmia: |
ldmia r0!,{0} |
|
pass |
/adc.cgs
0,0 → 1,12
# arm testcase for adc $rd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global alu_adc |
alu_adc: |
adc r0,r0 |
|
pass |
/add.cgs
0,0 → 1,12
# arm testcase for add $rd,$rs,$rn |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global add |
add: |
add r0,r0,r0 |
|
pass |
/addi8.cgs
0,0 → 1,12
# arm testcase for add ${bit10-rd},#$offset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global addi8 |
addi8: |
add r0,#0 |
|
pass |
/ldrh.cgs
0,0 → 1,12
# arm testcase for ldrh $rd,[$rb,$ro] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global ldrh |
ldrh: |
ldrh r0,[r0,r0] |
|
pass |
/subi8.cgs
0,0 → 1,12
# arm testcase for sub ${bit10-rd},#$offset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global subi8 |
subi8: |
sub r0,#0 |
|
pass |
/str-sprel.cgs
0,0 → 1,12
# arm testcase for str ${bit10-rd},[sp,#$word8] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global str_sprel |
str_sprel: |
str r0,[sp,#0] |
|
pass |
/bx-rs.cgs
0,0 → 1,12
# arm testcase for bx $rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bx_rs |
bx_rs: |
bx r0 |
|
pass |
/addi.cgs
0,0 → 1,12
# arm testcase for add $rd,$rs,#$offset3 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global addi |
addi: |
add r0,r0,#0 |
|
pass |
/ldr-imm.cgs
0,0 → 1,12
# arm testcase for ldr $rd,[$rb,#${offset5-7}] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global ldr_imm |
ldr_imm: |
ldr r0,[r0,#0] |
|
pass |
/mov.cgs
0,0 → 1,12
# arm testcase for mov ${bit10-rd},#$offset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global mov |
mov: |
mov r0,#0 |
|
pass |
/swi.cgs
0,0 → 1,12
# arm testcase for swi $value8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global swi |
swi: |
swi 0 |
|
pass |
/bne.cgs
0,0 → 1,12
# arm testcase for bne $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bne |
bne: |
bne footext |
|
pass |
/add-sp.cgs
0,0 → 1,12
# arm testcase for add sp,#$sword7 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global add_sp |
add_sp: |
add sp,#0 |
|
pass |
/bvc.cgs
0,0 → 1,12
# arm testcase for bvc $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bvc |
bvc: |
bvc footext |
|
pass |
/stmia.cgs
0,0 → 1,12
# arm testcase for stmia $rb!,{$rlist} |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global stmia |
stmia: |
stmia r0!,{0} |
|
pass |
/cmp-hd-hs.cgs
0,0 → 1,12
# arm testcase for cmp $hd,$hs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global cmp_hd_hs |
cmp_hd_hs: |
cmp r8,r8 |
|
pass |
/ldsb.cgs
0,0 → 1,12
# arm testcase for ldsb $rd,[$rb,$ro] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global ldsb |
ldsb: |
ldsb r0,[r0,r0] |
|
pass |
/bcc.cgs
0,0 → 1,12
# arm testcase for bcc $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bcc |
bcc: |
bcc footext |
|
pass |
/add-hd-hs.cgs
0,0 → 1,12
# arm testcase for add $hd,$hs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global add_hd_hs |
add_hd_hs: |
add r8,r8 |
|
pass |
/bvs.cgs
0,0 → 1,12
# arm testcase for bvs $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bvs |
bvs: |
bvs footext |
|
pass |
/cmp-rd-hs.cgs
0,0 → 1,12
# arm testcase for cmp $rd,$hs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global cmp_rd_hs |
cmp_rd_hs: |
cmp r0,r8 |
|
pass |
/ldsh.cgs
0,0 → 1,12
# arm testcase for ldsh $rd,[$rb,$ro] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global ldsh |
ldsh: |
ldsh r0,[r0,r0] |
|
pass |
/bl-hi.cgs
0,0 → 1,12
# arm testcase for bl-hi ${lbwl-hi} |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bl_hi |
bl_hi: |
bl-hi 0 |
|
pass |
/bge.cgs
0,0 → 1,12
# arm testcase for bge $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bge |
bge: |
bge footext |
|
pass |
/pop-pc.cgs
0,0 → 1,12
# arm testcase for pop {${rlist-pc}} |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global pop_pc |
pop_pc: |
pop {0} |
|
pass |
/add-rd-hs.cgs
0,0 → 1,12
# arm testcase for add $rd,$hs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global add_rd_hs |
add_rd_hs: |
add r0,r8 |
|
pass |
/ldrb-imm.cgs
0,0 → 1,12
# arm testcase for ldrb $rd,[$rb,#$offset5] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global ldrb_imm |
ldrb_imm: |
ldrb r0,[r0,#0] |
|
pass |
/bl-lo.cgs
0,0 → 1,12
# arm testcase for bl-lo ${lbwl-lo} |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bl_lo |
bl_lo: |
bl-lo 0 |
|
pass |
/bcs.cgs
0,0 → 1,12
# arm testcase for bcs $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bcs |
bcs: |
bcs footext |
|
pass |
/str.cgs
0,0 → 1,12
# arm testcase for str $rd,[$rb,$ro] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global str |
str: |
str r0,[r0,r0] |
|
pass |
/sub-sp.cgs
0,0 → 1,12
# arm testcase for add sp,#-$sword7 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global sub_sp |
sub_sp: |
add sp,#-0 |
|
pass |
/ldrh-imm.cgs
0,0 → 1,12
# arm testcase for ldrh $rd,[$rb,#${offset5-6}] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global ldrh_imm |
ldrh_imm: |
ldrh r0,[r0,#0] |
|
pass |
/strb.cgs
0,0 → 1,12
# arm testcase for strb $rd,[$rb,$ro] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global strb |
strb: |
strb r0,[r0,r0] |
|
pass |
/mov-hd-rs.cgs
0,0 → 1,12
# arm testcase for mov $hd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global mov_hd_rs |
mov_hd_rs: |
mov r8,r0 |
|
pass |
/bgt.cgs
0,0 → 1,12
# arm testcase for bgt $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bgt |
bgt: |
bgt footext |
|
pass |
/cmn.cgs
0,0 → 1,12
# arm testcase for cmn $rd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global alu_cmn |
alu_cmn: |
cmn r0,r0 |
|
pass |
/cmp.cgs
0,0 → 1,14
# arm testcase for cmp ${bit10-rd},#$offset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global cmp |
cmp: |
cmp r0,#0 |
|
# FIXME: Also: cmp $rd,$rs |
|
pass |
/strh.cgs
0,0 → 1,12
# arm testcase for strh $rd,[$rb,$ro] |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global strh |
strh: |
strh r0,[r0,r0] |
|
pass |
/bx-hs.cgs
0,0 → 1,12
# arm testcase for bx $hs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bx_hs |
bx_hs: |
bx r8 |
|
pass |
/sub.cgs
0,0 → 1,12
# arm testcase for sub $rd,$rs,$rn |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global sub |
sub: |
sub r0,r0,r0 |
|
pass |
/push-lr.cgs
0,0 → 1,12
# arm testcase for push {${rlist-lr}} |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global push_lr |
push_lr: |
push {0} |
|
pass |
/lsl.cgs
0,0 → 1,14
# arm testcase for lsl $rd,$rs,#$offset5 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global lsl |
lsl: |
lsl r0,r0,#0 |
|
# FIXME: Also lsl $rd,$rs |
|
pass |
/mul.cgs
0,0 → 1,12
# arm testcase for mul $rd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global alu_mul |
alu_mul: |
mul r0,r0 |
|
pass |
/testutils.inc
0,0 → 1,91
# FIXME: wip, copied from ../testutils.inc |
# r0-r3 are used as tmps, consider them call clobbered by these macros. |
# This uses the angel rom monitor calls. |
# ??? How do we use the \@ facility of .macros ??? |
# @ is the comment char! |
|
.macro a_mvi_h_gr reg, val |
ldr \reg,[pc] |
b . + 8 |
.word \val |
.endm |
|
.macro mvaddr_h_gr reg, addr |
ldr \reg,[pc] |
b . + 8 |
.word \val |
.endm |
|
.macro start |
.data |
failmsg: |
.asciz "fail\n" |
passmsg: |
.asciz "pass\n" |
.text |
|
do_pass: |
ldr r1, passmsg_addr |
mov r0, #4 |
swi #0x123456 |
exit 0 |
passmsg_addr: |
.word passmsg |
|
do_fail: |
ldr r1, failmsg_addr |
mov r0, #4 |
swi #0x123456 |
exit 1 |
failmsg_addr: |
.word failmsg |
|
.global _start |
_start: |
.endm |
|
# *** Other macros know pass/fail are 4 bytes in size! Yuck. |
|
.macro pass |
b do_pass |
.endm |
|
.macro fail |
b do_fail |
.endm |
|
.macro exit rc |
mov r1, #\rc |
mov r0, #0x2a @ decimal 42 |
swi #1 |
# If that returns, punt with a sigill. |
stc 0,cr0,[r0] |
.endm |
|
# Other macros know this only clobbers r0. |
.macro test_h_gr reg, val |
mvaddr_h_gr r0, \val |
cmp \reg, r0 |
beq . + 8 |
fail |
.endm |
|
.macro mvi_h_cc c, n, v, z |
ldi8 r0, 0 |
ldi8 r1, 1 |
.if xxx |
cmp r0, r1 |
.else |
cmp r1, r0 |
.endif |
.endm |
|
.macro test_h_cc c, n, v, z |
.if xxx |
bc . + 8 |
fail |
.else |
bnc . + 8 |
fail |
.endif |
.endm |
/pop.cgs
0,0 → 1,12
# arm testcase for pop {$rlist} |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global pop |
pop: |
pop {0} |
|
pass |
/lsr.cgs
0,0 → 1,14
# arm testcase for lsr $rd,$rs,#$offset5 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global lsr |
lsr: |
lsr r0,r0,#0 |
|
# FIXME: Also lsr $rd,$rs |
|
pass |
/and.cgs
0,0 → 1,12
# arm testcase for and $rd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global alu_and |
alu_and: |
and r0,r0 |
|
pass |
/bhi.cgs
0,0 → 1,12
# arm testcase for bhi $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global bhi |
bhi: |
bhi footext |
|
pass |
/ble.cgs
0,0 → 1,12
# arm testcase for ble $soffset8 |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global ble |
ble: |
ble footext |
|
pass |
/ror.cgs
0,0 → 1,12
# arm testcase for ror $rd,$rs |
# mach: unfinished |
|
.include "testutils.inc" |
|
start |
|
.global alu_ror |
alu_ror: |
ror r0,r0 |
|
pass |