projects
/
deliverable
/
binutils-gdb.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
blame
|
history
|
raw
|
HEAD
* Contribute Hitachi SH5 simulator.
[deliverable/binutils-gdb.git]
/
sim
/
testsuite
/
sim
/
sh64
/
compact
/
fmul.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
.macro init
9
fldi0 fr0
10
fldi1 fr1
11
fldi1 fr2
12
fadd fr2, fr2
13
fldi0 fr7
14
fldi1 fr8
15
.endm
16
17
start
18
19
# 0.0 * 0.0 = 0.0.
20
init
21
fmul fr0, fr0
22
fcmp/eq fr7, fr0
23
bf wrong
24
25
# 0.0 * 1.0 = 0.0.
26
init
27
fmul fr1, fr0
28
fcmp/eq fr7, fr0
29
bf wrong
30
31
# 1.0 * 0.0 = 0.0.
32
init
33
fmul fr0, fr1
34
fcmp/eq fr7, fr1
35
bf wrong
36
37
# 1.0 * 1.0 = 1.0.
38
init
39
fmul fr1, fr1
40
fcmp/eq fr8, fr1
41
bf wrong
42
43
# 2.0 * 1.0 = 2.0.
44
init
45
fmul fr2, fr1
46
fcmp/eq fr2, fr1
47
bf wrong
48
49
bra double
50
nop
51
52
wrong:
53
fail
54
55
.macro dinit
56
fldi0 fr0
57
fldi1 fr2
58
fldi1 fr4
59
fadd fr4, fr4
60
fldi0 fr8
61
fldi1 fr10
62
_s2d fr0, dr0
63
_s2d fr2, dr2
64
_s2d fr4, dr4
65
_s2d fr8, dr8
66
_s2d fr10, dr10
67
.endm
68
69
double:
70
# 0.0 * 0.0 = 0.0.
71
dinit
72
_setpr
73
fmul dr0, dr0
74
fcmp/eq dr8, dr0
75
bf wrong
76
_clrpr
77
78
# 0.0 * 1.0 = 0.0.
79
dinit
80
_setpr
81
fmul dr2, dr0
82
fcmp/eq dr8, dr0
83
bf wrong2
84
_clrpr
85
86
# 1.0 * 0.0 = 0.0.
87
dinit
88
_setpr
89
fmul dr0, dr2
90
fcmp/eq dr8, dr2
91
bf wrong2
92
_clrpr
93
94
bra next
95
nop
96
97
wrong2:
98
fail
99
100
next:
101
# 1.0 * 1.0 = 1.0.
102
dinit
103
_setpr
104
fmul dr2, dr2
105
fcmp/eq dr10, dr2
106
bf wrong3
107
_clrpr
108
109
# 2.0 * 1.0 = 2.0.
110
dinit
111
_setpr
112
fmul dr4, dr2
113
fcmp/eq dr4, dr2
114
bf wrong3
115
_clrpr
116
117
okay:
118
pass
119
120
wrong3:
121
fail
This page took
0.033695 seconds
and
5
git commands to generate.