Add support to GDB for the Renesas rl78 architecture.
[external/binutils.git] / sim / testsuite / sim / v850 / divu.cgs
1 # v850 divu
2 # mach: v850e
3 # as(v850e): -mv850e
4
5         .include "testutils.inc"
6
7         seti    6, r1
8         seti    45, r2
9         divu    r1, r2, r3
10
11         flags   0
12         reg     r1, 6
13         reg     r2, 7
14         reg     r3, 3
15
16         seti    4, r1
17         seti    0x40000000, r2
18         divu    r1, r2, r3
19
20         flags   0
21         reg     r1, 4
22         reg     r2, 0x10000000
23         reg     r3, 0
24
25 # If the data is divided by zero, OV=1 and the quotient is undefined.
26 # According to NEC, the S and Z flags, and the output registers, are
27 # unchanged.
28
29         noflags
30         seti    0, r1
31         seti    45, r2
32         seti    67, r3
33         divu    r1, r2, r3
34
35         flags   v
36         reg     r2, 45
37         reg     r3, 67
38
39         allflags
40         seti    0, r1
41         seti    45, r2
42         seti    67, r3
43         divu    r1, r2, r3
44
45         flags   sat + c + v + s + z
46         reg     r2, 45
47         reg     r3, 67
48
49 # Zero / (N!=0) => normal
50
51         noflags
52         seti    45, r1
53         seti    0, r2
54         seti    67, r3
55         divu    r1, r2, r3
56
57         flags   z
58         reg     r1, 45
59         reg     r2, 0
60         reg     r3, 0
61
62 # The Z flag is based on the quotient, not the remainder
63
64         noflags
65         seti    45, r1
66         seti    16, r2
67         divu    r1, r2, r3
68
69         flags   z
70         reg     r2, 0
71         reg     r3, 16
72
73 # If the quot and rem registers are the same, the remainder is stored.
74
75         seti    6, r1
76         seti    45, r2
77         divu    r1, r2, r2
78
79         flags   0
80         reg     r1, 6
81         reg     r2, 3
82
83         pass