]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - sim/testsuite/sim/fr30/reti.cgs
Initial creation of sourceware repository
[thirdparty/binutils-gdb.git] / sim / testsuite / sim / fr30 / reti.cgs
1 # fr30 testcase for reti
2 # mach(): fr30
3
4 .include "testutils.inc"
5
6 START
7
8 .text
9 .global reti
10 reti:
11 ; Test reti with low reset of ilm allowed
12 mvr_h_gr sp,r8 ; Save stack pointer
13 set_s_system
14 set_i 1
15 set_ilm 15 ; attempt reset of low range
16 set_cc 0x0f ; Condition codes should not change
17 save_ps
18 inci_h_gr -4,sp
19 mvi_h_mem ret1,sp
20 set_i 0 ; Set opposite of expected
21 set_ilm 0 ; attempt reset of low range
22 set_cc 0x00 ; Set opposite of expected
23
24 reti
25 fail
26
27 ret1:
28 test_cc 1 1 1 1
29 test_s_system
30 test_i 1
31 test_ilm 15
32 testr_h_gr r8,sp
33
34 ; Test reti with low reset of ilm not allowed
35 mvr_h_gr sp,r8 ; Save stack pointer
36 set_s_system
37 set_i 0
38 set_ilm 15 ; attempt reset of low range
39 set_cc 0x0f ; Condition codes should not change
40 save_ps
41 inci_h_gr -4,sp
42 mvi_h_mem ret2,sp
43 set_i 0 ; Set opposite of expected
44 set_ilm 16 ; disallow reset of low range
45 set_cc 0x00 ; Set opposite of expected
46
47 reti
48 fail
49
50 ret2:
51 test_cc 1 1 1 1
52 test_s_system
53 test_i 0
54 test_ilm 31
55 testr_h_gr r8,sp
56
57 pass