projects
/
binutils-gdb.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
346d01ffcaa2afaa11ba0b9e569eaf908ea2a161
[binutils-gdb.git]
/
sim
/
testsuite
/
sim
/
sh64
/
compact
/
fsub.cgs
1
# sh testcase for fmul -*- Asm -*-
2
# mach: all
3
# as: -isa=shcompact
4
# ld: -m shelf32
5
6
.include "compact/testutils.inc"
7
8
start
9
# 0.0 - 0.0 = 0.0.
10
fldi0 fr0
11
fldi0 fr1
12
fsub fr0, fr1
13
fldi0 fr2
14
fcmp/eq fr1, fr2
15
bf wrong
16
17
# 1.0 - 0.0 = 1.0.
18
fldi0 fr0
19
fldi1 fr1
20
fsub fr0, fr1
21
fldi1 fr2
22
fcmp/eq fr1, fr2
23
bf wrong
24
25
# 1.0 - 1.0 = 0.0.
26
fldi1 fr0
27
fldi1 fr1
28
fsub fr0, fr1
29
fldi0 fr2
30
fcmp/eq fr1, fr2
31
bf wrong
32
33
# 0.0 - 1.0 = -1.0.
34
fldi1 fr0
35
fldi0 fr1
36
fsub fr0, fr1
37
fldi1 fr2
38
fneg fr2
39
fcmp/eq fr1, fr2
40
bf wrong
41
42
bra double
43
nop
44
45
wrong:
46
fail
47
48
double:
49
# 0.0 - 0.0 = 0.0.
50
fldi0 fr0
51
fldi0 fr2
52
_s2d fr0, dr0
53
_s2d fr2, dr2
54
_setpr
55
fsub dr0, dr2
56
_clrpr
57
fldi0 fr4
58
_s2d fr4, dr4
59
_setpr
60
fcmp/eq dr2, dr4
61
bf wrong
62
_clrpr
63
64
onezero:
65
# 1.0 - 0.0 = 1.0.
66
fldi0 fr0
67
fldi1 fr2
68
_s2d fr0, dr0
69
_s2d fr2, dr2
70
_setpr
71
fsub dr0, dr2
72
_clrpr
73
fldi1 fr4
74
_s2d fr4, dr4
75
_setpr
76
fcmp/eq dr2, dr4
77
bf wrong2
78
_clrpr
79
80
oneone:
81
# 1.0 - 1.0 = 0.0.
82
fldi1 fr0
83
fldi1 fr2
84
_s2d fr0, dr0
85
_s2d fr2, dr2
86
_setpr
87
fsub dr0, dr2
88
_clrpr
89
fldi0 fr4
90
_s2d fr4, dr4
91
_setpr
92
fcmp/eq dr2, dr4
93
bf wrong2
94
_clrpr
95
96
bra zeroone
97
nop
98
99
wrong2:
100
fail
101
102
zeroone:
103
# 0.0 - 1.0 = -1.0.
104
fldi1 fr0
105
fldi0 fr2
106
_s2d fr0, dr0
107
_s2d fr2, dr2
108
_setpr
109
fsub dr0, dr2
110
_clrpr
111
fldi1 fr4
112
fneg fr4
113
_s2d fr4, dr4
114
_setpr
115
fcmp/eq dr2, dr4
116
bf wrong2
117
_clrpr
118
119
okay:
120
pass