fp-armv8.txt
2.65 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
# RUN: llvm-mc -disassemble -triple armv8 -mattr=+fp-armv8 -show-encoding < %s | FileCheck %s
0xe0 0x3b 0xb2 0xee
# CHECK: vcvtt.f64.f16 d3, s1
0xcc 0x2b 0xf3 0xee
# CHECK: vcvtt.f16.f64 s5, d12
0x60 0x3b 0xb2 0xee
# CHECK: vcvtb.f64.f16 d3, s1
0x41 0x2b 0xb3 0xee
# CHECK: vcvtb.f16.f64 s4, d1
0xe0 0x3b 0xb2 0xae
# CHECK: vcvttge.f64.f16 d3, s1
0xcc 0x2b 0xf3 0xce
# CHECK: vcvttgt.f16.f64 s5, d12
0x60 0x3b 0xb2 0x0e
# CHECK: vcvtbeq.f64.f16 d3, s1
0x41 0x2b 0xb3 0xbe
# CHECK: vcvtblt.f16.f64 s4, d1
0xe1 0x1a 0xbc 0xfe
# CHECK: vcvta.s32.f32 s2, s3
0xc3 0x1b 0xbc 0xfe
# CHECK: vcvta.s32.f64 s2, d3
0xeb 0x3a 0xbd 0xfe
# CHECK: vcvtn.s32.f32 s6, s23
0xe7 0x3b 0xbd 0xfe
# CHECK: vcvtn.s32.f64 s6, d23
0xc2 0x0a 0xbe 0xfe
# CHECK: vcvtp.s32.f32 s0, s4
0xc4 0x0b 0xbe 0xfe
# CHECK: vcvtp.s32.f64 s0, d4
0xc4 0x8a 0xff 0xfe
# CHECK: vcvtm.s32.f32 s17, s8
0xc8 0x8b 0xff 0xfe
# CHECK: vcvtm.s32.f64 s17, d8
0x61 0x1a 0xbc 0xfe
# CHECK: vcvta.u32.f32 s2, s3
0x43 0x1b 0xbc 0xfe
# CHECK: vcvta.u32.f64 s2, d3
0x6b 0x3a 0xbd 0xfe
# CHECK: vcvtn.u32.f32 s6, s23
0x67 0x3b 0xbd 0xfe
# CHECK: vcvtn.u32.f64 s6, d23
0x42 0x0a 0xbe 0xfe
# CHECK: vcvtp.u32.f32 s0, s4
0x44 0x0b 0xbe 0xfe
# CHECK: vcvtp.u32.f64 s0, d4
0x44 0x8a 0xff 0xfe
# CHECK: vcvtm.u32.f32 s17, s8
0x48 0x8b 0xff 0xfe
# CHECK: vcvtm.u32.f64 s17, d8
0xab 0x2a 0x20 0xfe
# CHECK: vselge.f32 s4, s1, s23
0xa7 0xeb 0x6f 0xfe
# CHECK: vselge.f64 d30, d31, d23
0x80 0x0a 0x30 0xfe
# CHECK: vselgt.f32 s0, s1, s0
0x24 0x5b 0x3a 0xfe
# CHECK: vselgt.f64 d5, d10, d20
0x2b 0xfa 0x0e 0xfe
# CHECK: vseleq.f32 s30, s28, s23
0x08 0x2b 0x04 0xfe
# CHECK: vseleq.f64 d2, d4, d8
0x07 0xaa 0x58 0xfe
# CHECK: vselvs.f32 s21, s16, s14
0x2f 0x0b 0x11 0xfe
# CHECK: vselvs.f64 d0, d1, d31
0x00 0x2a 0xc6 0xfe
# CHECK: vmaxnm.f32 s5, s12, s0
0xae 0x5b 0x86 0xfe
# CHECK: vmaxnm.f64 d5, d22, d30
0x46 0x0a 0x80 0xfe
# CHECK: vminnm.f32 s0, s0, s12
0x49 0x4b 0x86 0xfe
# CHECK: vminnm.f64 d4, d6, d9
0xcc 0x3b 0xb6 0xae
# CHECK: vrintzge.f64 d3, d12
0xcc 0x1a 0xf6 0xee
# CHECK: vrintz.f32 s3, s24
0x40 0x5b 0xb6 0xbe
# CHECK: vrintrlt.f64 d5, d0
0x64 0x0a 0xb6 0xee
# CHECK: vrintr.f32 s0, s9
0x6e 0xcb 0xf7 0x0e
# CHECK: vrintxeq.f64 d28, d30
0x47 0x5a 0xb7 0x6e
# CHECK: vrintxvs.f32 s10, s14
0x44 0x3b 0xb8 0xfe
# CHECK: vrinta.f64 d3, d4
0x60 0x6a 0xb8 0xfe
# CHECK: vrinta.f32 s12, s1
0x44 0x3b 0xb9 0xfe
# CHECK: vrintn.f64 d3, d4
0x60 0x6a 0xb9 0xfe
# CHECK: vrintn.f32 s12, s1
0x44 0x3b 0xba 0xfe
# CHECK: vrintp.f64 d3, d4
0x60 0x6a 0xba 0xfe
# CHECK: vrintp.f32 s12, s1
0x44 0x3b 0xbb 0xfe
# CHECK: vrintm.f64 d3, d4
0x60 0x6a 0xbb 0xfe
# CHECK: vrintm.f32 s12, s1
0x10 0xa 0xf5 0xee
# CHECK: vmrs r0, mvfr2