]>
Commit | Line | Data |
---|---|---|
cbb38b47 BE |
1 | # sh testcase for fcmpeq -*- Asm -*- |
2 | # mach: all | |
3 | # as: -isa=shcompact | |
4 | # ld: -m shelf32 | |
5 | ||
6 | .include "compact/testutils.inc" | |
7 | ||
8 | start | |
9 | ||
10 | # 1.0 == 1.0. | |
11 | fldi1 fr0 | |
12 | fldi1 fr1 | |
13 | fcmp/eq fr0, fr1 | |
14 | bf wrong | |
15 | ||
16 | # 0.0 != 1.0. | |
17 | fldi0 fr0 | |
18 | fldi1 fr1 | |
19 | fcmp/eq fr0, fr1 | |
20 | bt wrong | |
21 | ||
22 | # 1.0 != 0.0. | |
23 | fldi1 fr0 | |
24 | fldi0 fr1 | |
25 | fcmp/eq fr0, fr1 | |
26 | bt wrong | |
27 | ||
28 | # 2.0 != 1.0 | |
29 | fldi1 fr0 | |
30 | fadd fr0, fr0 | |
31 | fldi1 fr1 | |
32 | fcmp/eq fr0, fr1 | |
33 | bt wrong | |
34 | ||
35 | bra double | |
36 | # delay slot | |
37 | nop | |
38 | ||
39 | wrong: | |
40 | fail | |
41 | ||
42 | double: | |
43 | # 1.0 == 1.0 | |
44 | fldi1 fr0 | |
45 | fldi1 fr2 | |
46 | _s2d fr0, dr0 | |
47 | _s2d fr2, dr2 | |
48 | _setpr | |
49 | fcmp/eq dr0, dr2 | |
50 | bf wrong | |
51 | _clrpr | |
52 | ||
53 | # 0.0 != 1.0 | |
54 | fldi0 fr0 | |
55 | fldi1 fr2 | |
56 | _s2d fr0, dr0 | |
57 | _s2d fr2, dr2 | |
58 | _setpr | |
59 | fcmp/eq dr0, dr2 | |
60 | bt wrong | |
61 | _clrpr | |
62 | ||
63 | # 1.0 != 0.0 | |
64 | fldi1 fr0 | |
65 | fldi0 fr2 | |
66 | _s2d fr0, dr0 | |
67 | _s2d fr2, dr2 | |
68 | _setpr | |
69 | fcmp/eq dr0, dr2 | |
70 | bt wrong2 | |
71 | _clrpr | |
72 | ||
73 | # 2.0 != 1.0 | |
74 | fldi1 fr0 | |
75 | fadd fr0, fr0 | |
76 | fldi1 fr2 | |
77 | _s2d fr0, dr0 | |
78 | _s2d fr2, dr2 | |
79 | _setpr | |
80 | fcmp/eq dr0, dr2 | |
81 | bt wrong2 | |
82 | _clrpr | |
83 | ||
84 | okay: | |
85 | pass | |
86 | ||
87 | wrong2: | |
88 | fail |