binutils-gdb/sim/testsuite/frv/break.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

59 lines
1.4 KiB
Plaintext

# FRV testcase for break
# mach: all
.include "testutils.inc"
start
.global tra
tra:
; Can't test break anymore in the user environment because it is the
; debugger's breakpoint insn. Just pass this test for now.
pass
set_gr_spr tbr,gr7
and_gr_immed -4081,gr7 ; clear tbr.tt
inc_gr_immed 0xff0,gr7 ; break handler
set_bctrlr_0_0 gr7
set_spr_immed 128,lcr
test_spr_bits 0x4,2,0x1,psr ; psr.s is set
test_spr_bits 0x1,0,0x0,psr ; psr.et is clear
set_spr_addr ok1,lr
break
ret:
or_spr_immed 0x00000001,psr ; turn on psr.et
and_spr_immed 0xfffffffb,psr ; turn off psr.s
test_spr_bits 0x4,2,0x0,psr ; psr.s is clear
test_spr_bits 0x1,0,0x1,psr ; psr.et is set
set_spr_addr ok0,lr
break
ret1:
test_spr_bits 0x4,2,0x0,psr ; psr.s is clear
test_spr_bits 0x1,0,0x1,psr ; psr.et is set
pass
; check interrupt for second break
ok0: test_spr_addr ret1,bpcsr
test_spr_bits 0x1000,12,0x0,bpsr ; bpsr.bs is clear
test_spr_bits 0x0001,0,0x1,bpsr ; bpsr.et is set
test_spr_bits 0x4,2,0x1,psr ; psr.s is set
test_spr_bits 0x1,0,0x0,psr ; psr.et is clear
rett 0 ; nop
rett 1
; check interrupt for first break
ok1: test_spr_addr ret,bpcsr
test_spr_bits 0x1000,12,0x1,bpsr ; bpsr.bs is set
test_spr_bits 0x0001,0,0x0,bpsr ; bpsr.et is clear
test_spr_bits 0x4,2,0x1,psr ; psr.s is set
test_spr_bits 0x1,0,0x0,psr ; psr.et is clear
rett 0 ; nop
rett 1