Commit | Line | Data |
---|---|---|
cc933301 JW |
1 | #name: ARM v8.2 FP16 support on SIMD |
2 | #source: armv8-2-fp16-simd.s | |
3 | #objdump: -d | |
4 | #as: -march=armv8.2-a+fp16 -mfpu=neon-fp-armv8 | |
5 | #skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd | |
6 | ||
7 | .*: +file format .*arm.* | |
8 | ||
9 | Disassembly of section .text: | |
10 | ||
11 | 00000000 <func>: | |
12 | 0: f3342d0e vabd.f16 d2, d4, d14 | |
13 | 4: f3384d6c vabd.f16 q2, q4, q14 | |
14 | 8: f2142f0e vmax.f16 d2, d4, d14 | |
15 | c: f2184f6c vmax.f16 q2, q4, q14 | |
16 | 10: f2342f0e vmin.f16 d2, d4, d14 | |
17 | 14: f2384f6c vmin.f16 q2, q4, q14 | |
18 | 18: f3300dec vabd.f16 q0, q8, q14 | |
19 | 1c: f2100fec vmax.f16 q0, q8, q14 | |
20 | 20: f2300fec vmin.f16 q0, q8, q14 | |
21 | 24: f3331d0f vabd.f16 d1, d3, d15 | |
22 | 28: f3310d08 vabd.f16 d0, d1, d8 | |
23 | 2c: f3b50708 vabs.f16 d0, d8 | |
24 | 30: f3b50760 vabs.f16 q0, q8 | |
25 | 34: f3b50788 vneg.f16 d0, d8 | |
26 | 38: f3b507e0 vneg.f16 q0, q8 | |
27 | 3c: f3b5474c vabs.f16 q2, q6 | |
28 | 40: f3b547cc vneg.f16 q2, q6 | |
29 | 44: f3b57703 vabs.f16 d7, d3 | |
30 | 48: f3b59781 vneg.f16 d9, d1 | |
31 | 4c: f3142e1e vacge.f16 d2, d4, d14 | |
32 | 50: f3184e7c vacge.f16 q2, q4, q14 | |
33 | 54: f3342e1e vacgt.f16 d2, d4, d14 | |
34 | 58: f3384e7c vacgt.f16 q2, q4, q14 | |
35 | 5c: f33e2e14 vacgt.f16 d2, d14, d4 | |
36 | 60: f33c4ed8 vacgt.f16 q2, q14, q4 | |
37 | 64: f31e2e14 vacge.f16 d2, d14, d4 | |
38 | 68: f31c4ed8 vacge.f16 q2, q14, q4 | |
39 | 6c: f2142e0e vceq.f16 d2, d4, d14 | |
40 | 70: f2184e6c vceq.f16 q2, q4, q14 | |
41 | 74: f3142e0e vcge.f16 d2, d4, d14 | |
42 | 78: f3184e6c vcge.f16 q2, q4, q14 | |
43 | 7c: f3342e0e vcgt.f16 d2, d4, d14 | |
44 | 80: f3384e6c vcgt.f16 q2, q4, q14 | |
45 | 84: f31e2e04 vcge.f16 d2, d14, d4 | |
46 | 88: f31c4ec8 vcge.f16 q2, q14, q4 | |
47 | 8c: f33e2e04 vcgt.f16 d2, d14, d4 | |
48 | 90: f33c4ec8 vcgt.f16 q2, q14, q4 | |
49 | 94: f3100efc vacge.f16 q0, q8, q14 | |
50 | 98: f3300efc vacgt.f16 q0, q8, q14 | |
51 | 9c: f33c0ef0 vacgt.f16 q0, q14, q8 | |
52 | a0: f31c0ef0 vacge.f16 q0, q14, q8 | |
53 | a4: f2100eec vceq.f16 q0, q8, q14 | |
54 | a8: f3100eec vcge.f16 q0, q8, q14 | |
55 | ac: f3300eec vcgt.f16 q0, q8, q14 | |
56 | b0: f31c0ee0 vcge.f16 q0, q14, q8 | |
57 | b4: f33c0ee0 vcgt.f16 q0, q14, q8 | |
58 | b8: f2142d0e vadd.f16 d2, d4, d14 | |
59 | bc: f2184d6c vadd.f16 q2, q4, q14 | |
60 | c0: f2342d0e vsub.f16 d2, d4, d14 | |
61 | c4: f2384d6c vsub.f16 q2, q4, q14 | |
62 | c8: f2100dec vadd.f16 q0, q8, q14 | |
63 | cc: f2300dec vsub.f16 q0, q8, q14 | |
64 | d0: f3142f1e vmaxnm.f16 d2, d4, d14 | |
65 | d4: f3184f7c vmaxnm.f16 q2, q4, q14 | |
66 | d8: f3342f1e vminnm.f16 d2, d4, d14 | |
67 | dc: f3384f7c vminnm.f16 q2, q4, q14 | |
68 | e0: f2142c1e vfma.f16 d2, d4, d14 | |
69 | e4: f2184c7c vfma.f16 q2, q4, q14 | |
70 | e8: f2342c1e vfms.f16 d2, d4, d14 | |
71 | ec: f2384c7c vfms.f16 q2, q4, q14 | |
72 | f0: f2142d1e vmla.f16 d2, d4, d14 | |
73 | f4: f2184d7c vmla.f16 q2, q4, q14 | |
74 | f8: f2342d1e vmls.f16 d2, d4, d14 | |
75 | fc: f2384d7c vmls.f16 q2, q4, q14 | |
76 | 100: f3b6458e vrintz.f16 d4, d14 | |
77 | 104: f3b685ec vrintz.f16 q4, q14 | |
78 | 108: f3b6448e vrintx.f16 d4, d14 | |
79 | 10c: f3b684ec vrintx.f16 q4, q14 | |
80 | 110: f3b6450e vrinta.f16 d4, d14 | |
81 | 114: f3b6856c vrinta.f16 q4, q14 | |
82 | 118: f3b6440e vrintn.f16 d4, d14 | |
83 | 11c: f3b6846c vrintn.f16 q4, q14 | |
84 | 120: f3b6478e vrintp.f16 d4, d14 | |
85 | 124: f3b687ec vrintp.f16 q4, q14 | |
86 | 128: f3b6468e vrintm.f16 d4, d14 | |
87 | 12c: f3b686ec vrintm.f16 q4, q14 | |
88 | 130: f3184d0e vpadd.f16 d4, d8, d14 | |
89 | 134: f3b74508 vrecpe.f16 d4, d8 | |
90 | 138: f3b78560 vrecpe.f16 q4, q8 | |
91 | 13c: f3b74588 vrsqrte.f16 d4, d8 | |
92 | 140: f3b785e0 vrsqrte.f16 q4, q8 | |
93 | 144: f3b70564 vrecpe.f16 q0, q10 | |
94 | 148: f3b705e4 vrsqrte.f16 q0, q10 | |
95 | 14c: f21a8f1c vrecps.f16 d8, d10, d12 | |
96 | 150: f2540ff8 vrecps.f16 q8, q10, q12 | |
97 | 154: f23a8f1c vrsqrts.f16 d8, d10, d12 | |
98 | 158: f2740ff8 vrsqrts.f16 q8, q10, q12 | |
99 | 15c: f2104f58 vrecps.f16 q2, q0, q4 | |
100 | 160: f2304f58 vrsqrts.f16 q2, q0, q4 | |
101 | 164: f3184f0e vpmax.f16 d4, d8, d14 | |
102 | 168: f338af02 vpmin.f16 d10, d8, d2 | |
103 | 16c: f3184d1e vmul.f16 d4, d8, d14 | |
104 | 170: f3107d11 vmul.f16 d7, d0, d1 | |
105 | 174: f3104dd0 vmul.f16 q2, q8, q0 | |
106 | 178: f3b7600c vcvta.s16.f16 d6, d12 | |
107 | 17c: f3b7c068 vcvta.s16.f16 q6, q12 | |
108 | 180: f3b7630c vcvtm.s16.f16 d6, d12 | |
109 | 184: f3b7c368 vcvtm.s16.f16 q6, q12 | |
110 | 188: f3b7610c vcvtn.s16.f16 d6, d12 | |
111 | 18c: f3b7c168 vcvtn.s16.f16 q6, q12 | |
112 | 190: f3b7620c vcvtp.s16.f16 d6, d12 | |
113 | 194: f3b7c268 vcvtp.s16.f16 q6, q12 | |
114 | 198: f3b7608c vcvta.u16.f16 d6, d12 | |
115 | 19c: f3b7c0e8 vcvta.u16.f16 q6, q12 | |
116 | 1a0: f3b7638c vcvtm.u16.f16 d6, d12 | |
117 | 1a4: f3b7c3e8 vcvtm.u16.f16 q6, q12 | |
118 | 1a8: f3b7618c vcvtn.u16.f16 d6, d12 | |
119 | 1ac: f3b7c1e8 vcvtn.u16.f16 q6, q12 | |
120 | 1b0: f3b7628c vcvtp.u16.f16 d6, d12 | |
121 | 1b4: f3b7c2e8 vcvtp.u16.f16 q6, q12 | |
122 | 1b8: f3b7e700 vcvt.s16.f16 d14, d0 | |
123 | 1bc: f3f7c740 vcvt.s16.f16 q14, q0 | |
124 | 1c0: f3b7e780 vcvt.u16.f16 d14, d0 | |
125 | 1c4: f3f7c7c0 vcvt.u16.f16 q14, q0 | |
126 | 1c8: f3b7e600 vcvt.f16.s16 d14, d0 | |
127 | 1cc: f3f7c640 vcvt.f16.s16 q14, q0 | |
128 | 1d0: f3b7e680 vcvt.f16.u16 d14, d0 | |
129 | 1d4: f3f7c6c0 vcvt.f16.u16 q14, q0 | |
130 | 1d8: f2bded10 vcvt.s16.f16 d14, d0, #3 | |
131 | 1dc: f2fdcd50 vcvt.s16.f16 q14, q0, #3 | |
132 | 1e0: f3bded10 vcvt.u16.f16 d14, d0, #3 | |
133 | 1e4: f3fdcd50 vcvt.u16.f16 q14, q0, #3 | |
134 | 1e8: f2bdec10 vcvt.f16.s16 d14, d0, #3 | |
135 | 1ec: f2fdcc50 vcvt.f16.s16 q14, q0, #3 | |
136 | 1f0: f3bdec10 vcvt.f16.u16 d14, d0, #3 | |
137 | 1f4: f3fdcc50 vcvt.f16.u16 q14, q0, #3 | |
138 | 1f8: f3b5e502 vceq.f16 d14, d2, #0 | |
139 | 1fc: f3f5c544 vceq.f16 q14, q2, #0 | |
140 | 200: f3b5e482 vcge.f16 d14, d2, #0 | |
141 | 204: f3f5c4c4 vcge.f16 q14, q2, #0 | |
142 | 208: f3b5e402 vcgt.f16 d14, d2, #0 | |
143 | 20c: f3f5c444 vcgt.f16 q14, q2, #0 | |
144 | 210: f3b5e582 vcle.f16 d14, d2, #0 | |
145 | 214: f3f5c5c4 vcle.f16 q14, q2, #0 | |
146 | 218: f3b5e602 vclt.f16 d14, d2, #0 | |
147 | 21c: f3f5c644 vclt.f16 q14, q2, #0 | |
589a7d88 JW |
148 | 220: f2907941 vmul.f16 d7, d0, d1\[0\] |
149 | 224: f2984966 vmul.f16 d4, d8, d6\[2\] | |
150 | 228: f39049c8 vmul.f16 q2, q8, d0\[1\] | |
151 | 22c: f39049ef vmul.f16 q2, q8, d7\[3\] | |
152 | 230: f2942141 vmla.f16 d2, d4, d1\[0\] | |
153 | 234: f3984141 vmla.f16 q2, q4, d1\[0\] | |
154 | 238: f2942541 vmls.f16 d2, d4, d1\[0\] | |
155 | 23c: f3984541 vmls.f16 q2, q4, d1\[0\] | |
156 | 240: f298116f vmla.f16 d1, d8, d7\[3\] | |
157 | 244: f39021ef vmla.f16 q1, q8, d7\[3\] | |
158 | 248: f298156f vmls.f16 d1, d8, d7\[3\] | |
159 | 24c: f39025ef vmls.f16 q1, q8, d7\[3\] |