Home | History | Annotate | Download | only in arm
      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
    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\]
    160