* sim/cris/asm/testutils.inc (test_move_cc): Add missing call to
[external/binutils.git] / sim / testsuite / sim / cris / asm / jsr.ms
1 # mach: crisv3 crisv8 crisv10 crisv32
2 # output: 0\n0\n0\n0\n0\n0\n
3
4 # Test that jsr Rn and jsr [PC+] work.
5
6  .include "testutils.inc"
7  start
8 x:
9  move.d 0f,r6
10  setf nzvc
11  jsr r6
12  .if ..asm.arch.cris.v32
13  nop
14  .endif
15 0:
16  test_move_cc 1 1 1 1
17  move srp,r3
18  sub.d 0b,r3
19  dumpr3
20
21  move.d 1f,r0
22  setf nzvc
23  jsr r0
24  .if ..asm.arch.cris.v32
25  moveq 0,r0
26  .endif
27 6:
28  nop
29  quit
30
31 2:
32  test_move_cc 0 0 0 0
33  move srp,r3
34  sub.d 3f,r3
35  dumpr3
36  jsr 4f
37  .if ..asm.arch.cris.v32
38  nop
39  .endif
40 7:
41  nop
42  quit
43
44 ; Can't use local label 8 or 9, as they're used by test_move_cc.
45 y:
46  move srp,r3
47  sub.d 7b,r3
48  dumpr3
49  quit
50
51 4:
52  move srp,r3
53  sub.d 7b,r3
54  dumpr3
55  move.d 5f,r3
56  jump r3
57  .if ..asm.arch.cris.v32
58  moveq 0,r3
59  .endif
60  quit
61
62  .space 32770,0
63 1:
64  test_move_cc 1 1 1 1
65  move srp,r3
66  sub.d 6b,r3
67  dumpr3
68
69  clearf cznv
70  jsr 2b
71  .if ..asm.arch.cris.v32
72  nop
73  .endif
74 3:
75
76  quit
77
78 5:
79  move srp,r3
80  sub.d 7b,r3
81  dumpr3
82  jump y
83  .if ..asm.arch.cris.v32
84  nop
85  .endif
86  quit