binutils-gdb/sim/testsuite/frv/tinv.cgs
Mike Frysinger 1368b914e9 sim: testsuite: flatten tree
Now that all port tests live under testsuite/sim/*/, and none live
in testsuite/ directly, flatten the structure by moving all of the
dirs under testsuite/sim/ to testsuite/ directly.

We need to stop passing --tool to dejagnu so that it searches all
dirs and not just ones that start with "sim".  Since we have no
other dirs in this tree, and no plans to add any, should be fine.
2021-01-15 19:18:34 -05:00

101 lines
2.0 KiB
Plaintext

# frv testcase for tinv $ICCi_2,$GRi,$s12
# mach: all
.include "testutils.inc"
start
.global tinv
tinv:
and_spr_immed -4081,tbr ; clear tbr.tt
set_gr_spr tbr,gr7
inc_gr_immed 2112,gr7 ; address of exception handler
set_bctrlr_0_0 gr7 ; bctrlr 0,0
set_spr_immed 128,lcr
set_gr_immed 0,gr7
set_psr_et 1
set_spr_addr ok0,lr
set_icc 0x0 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
fail
ok0:
set_psr_et 1
set_spr_addr ok1,lr
set_icc 0x1 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
fail
ok1:
set_spr_addr bad,lr
set_icc 0x2 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
set_spr_addr bad,lr
set_icc 0x3 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
set_psr_et 1
set_spr_addr ok4,lr
set_icc 0x4 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
fail
ok4:
set_psr_et 1
set_spr_addr ok5,lr
set_icc 0x5 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
fail
ok5:
set_spr_addr bad,lr
set_icc 0x6 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
set_spr_addr bad,lr
set_icc 0x7 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
set_psr_et 1
set_spr_addr ok8,lr
set_icc 0x8 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
fail
ok8:
set_psr_et 1
set_spr_addr ok9,lr
set_icc 0x9 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
fail
ok9:
set_spr_addr bad,lr
set_icc 0xa 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
set_spr_addr bad,lr
set_icc 0xb 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
set_psr_et 1
set_spr_addr okc,lr
set_icc 0xc 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
fail
okc:
set_psr_et 1
set_spr_addr okd,lr
set_icc 0xd 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
fail
okd:
set_spr_addr bad,lr
set_icc 0xe 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
set_spr_addr bad,lr
set_icc 0xf 0
tinv icc0,gr7,4 ; should branch to tbr + (128 + 4)*16
pass
bad:
fail