1/* NEON builtin definitions for ARM. 2 Copyright (C) 2013-2020 Free Software Foundation, Inc. 3 Contributed by ARM Ltd. 4 5 This file is part of GCC. 6 7 GCC is free software; you can redistribute it and/or modify it 8 under the terms of the GNU General Public License as published 9 by the Free Software Foundation; either version 3, or (at your 10 option) any later version. 11 12 GCC is distributed in the hope that it will be useful, but WITHOUT 13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 14 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public 15 License for more details. 16 17 You should have received a copy of the GNU General Public License 18 along with GCC; see the file COPYING3. If not see 19 <http://www.gnu.org/licenses/>. */ 20 21VAR2 (BINOP, vadd, v2sf, v4sf) 22VAR2 (BINOP, vadd, v8hf, v4hf) 23VAR3 (BINOP, vaddls, v8qi, v4hi, v2si) 24VAR3 (BINOP, vaddlu, v8qi, v4hi, v2si) 25VAR3 (BINOP, vaddws, v8qi, v4hi, v2si) 26VAR3 (BINOP, vaddwu, v8qi, v4hi, v2si) 27VAR6 (BINOP, vhaddu, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 28VAR6 (BINOP, vhadds, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 29VAR6 (BINOP, vrhaddu, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 30VAR6 (BINOP, vrhadds, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 31VAR8 (BINOP, vqadds, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 32VAR8 (BINOP, vqaddu, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 33VAR3 (BINOP, vaddhn, v8hi, v4si, v2di) 34VAR3 (BINOP, vraddhn, v8hi, v4si, v2di) 35VAR2 (BINOP, vmulf, v2sf, v4sf) 36VAR2 (BINOP, vmulf, v8hf, v4hf) 37VAR2 (BINOP, vmulp, v8qi, v16qi) 38VAR8 (TERNOP, vmla, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) 39VAR3 (TERNOP, vmlals, v8qi, v4hi, v2si) 40VAR3 (TERNOP, vmlalu, v8qi, v4hi, v2si) 41VAR2 (TERNOP, vfma, v2sf, v4sf) 42VAR2 (TERNOP, vfma, v4hf, v8hf) 43VAR2 (TERNOP, vfms, v2sf, v4sf) 44VAR2 (TERNOP, vfms, v4hf, v8hf) 45VAR8 (TERNOP, vmls, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) 46VAR3 (TERNOP, vmlsls, v8qi, v4hi, v2si) 47VAR3 (TERNOP, vmlslu, v8qi, v4hi, v2si) 48VAR4 (BINOP, vqdmulh, v4hi, v2si, v8hi, v4si) 49VAR4 (BINOP, vqrdmulh, v4hi, v2si, v8hi, v4si) 50VAR2 (TERNOP, vqdmlal, v4hi, v2si) 51VAR2 (TERNOP, vqdmlsl, v4hi, v2si) 52VAR4 (TERNOP, vqrdmlah, v4hi, v2si, v8hi, v4si) 53VAR4 (TERNOP, vqrdmlsh, v4hi, v2si, v8hi, v4si) 54VAR2 (TERNOP, vfmal_low, v2sf, v4sf) 55VAR2 (TERNOP, vfmal_high, v2sf, v4sf) 56VAR2 (TERNOP, vfmsl_low, v2sf, v4sf) 57VAR2 (TERNOP, vfmsl_high, v2sf, v4sf) 58VAR2 (MAC_LANE, vfmal_lane_low, v2sf, v4sf) 59VAR1 (MAC_LANE, vfmal_lane_lowv4hf, v4sf) 60VAR1 (MAC_LANE, vfmal_lane_lowv8hf, v2sf) 61VAR2 (MAC_LANE, vfmal_lane_high, v2sf, v4sf) 62VAR1 (MAC_LANE, vfmal_lane_highv4hf, v4sf) 63VAR1 (MAC_LANE, vfmal_lane_highv8hf, v2sf) 64VAR2 (MAC_LANE, vfmsl_lane_low, v2sf, v4sf) 65VAR1 (MAC_LANE, vfmsl_lane_lowv4hf, v4sf) 66VAR1 (MAC_LANE, vfmsl_lane_lowv8hf, v2sf) 67VAR2 (MAC_LANE, vfmsl_lane_high, v2sf, v4sf) 68VAR1 (MAC_LANE, vfmsl_lane_highv4hf, v4sf) 69VAR1 (MAC_LANE, vfmsl_lane_highv8hf, v2sf) 70VAR3 (BINOP, vmullp, v8qi, v4hi, v2si) 71VAR3 (BINOP, vmulls, v8qi, v4hi, v2si) 72VAR3 (BINOP, vmullu, v8qi, v4hi, v2si) 73VAR2 (BINOP, vmulls_n, v4hi, v2si) 74VAR2 (BINOP, vmullu_n, v4hi, v2si) 75VAR2 (SETLANE, vmulls_lane, v4hi, v2si) 76VAR2 (SETLANE, vmullu_lane, v4hi, v2si) 77VAR2 (BINOP, vqdmull_n, v4hi, v2si) 78VAR2 (SETLANE, vqdmull_lane, v4hi, v2si) 79VAR4 (BINOP, vqdmulh_n, v4hi, v2si, v8hi, v4si) 80VAR4 (BINOP, vqrdmulh_n, v4hi, v2si, v8hi, v4si) 81VAR4 (SETLANE, vqdmulh_lane, v4hi, v2si, v8hi, v4si) 82VAR4 (SETLANE, vqrdmulh_lane, v4hi, v2si, v8hi, v4si) 83VAR4 (MAC_LANE, vqrdmlah_lane, v4hi, v2si, v8hi, v4si) 84VAR4 (MAC_LANE, vqrdmlsh_lane, v4hi, v2si, v8hi, v4si) 85VAR2 (BINOP, vqdmull, v4hi, v2si) 86VAR8 (BINOP, vshls, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 87VAR8 (BINOP, vshlu, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 88VAR8 (BINOP, vrshls, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 89VAR8 (BINOP, vrshlu, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 90VAR8 (BINOP, vqshls, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 91VAR8 (BINOP, vqshlu, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 92VAR8 (BINOP, vqrshls, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 93VAR8 (BINOP, vqrshlu, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 94VAR8 (BINOP_IMM, vshrs_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 95VAR8 (BINOP_IMM, vshru_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 96VAR8 (BINOP_IMM, vrshrs_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 97VAR8 (BINOP_IMM, vrshru_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 98VAR3 (BINOP_IMM, vshrn_n, v8hi, v4si, v2di) 99VAR3 (BINOP_IMM, vrshrn_n, v8hi, v4si, v2di) 100VAR3 (BINOP_IMM, vqshrns_n, v8hi, v4si, v2di) 101VAR3 (BINOP_IMM, vqshrnu_n, v8hi, v4si, v2di) 102VAR3 (BINOP_IMM, vqrshrns_n, v8hi, v4si, v2di) 103VAR3 (BINOP_IMM, vqrshrnu_n, v8hi, v4si, v2di) 104VAR3 (BINOP_IMM, vqshrun_n, v8hi, v4si, v2di) 105VAR3 (BINOP_IMM, vqrshrun_n, v8hi, v4si, v2di) 106VAR8 (BINOP_IMM, vshl_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 107VAR8 (BINOP_IMM, vqshl_s_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 108VAR8 (BINOP_IMM, vqshl_u_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 109VAR8 (BINOP_IMM, vqshlu_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 110VAR3 (BINOP_IMM, vshlls_n, v8qi, v4hi, v2si) 111VAR3 (BINOP_IMM, vshllu_n, v8qi, v4hi, v2si) 112VAR8 (TERNOP_IMM, vsras_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 113VAR8 (TERNOP_IMM, vsrau_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 114VAR8 (TERNOP_IMM, vrsras_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 115VAR8 (TERNOP_IMM, vrsrau_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 116VAR2 (BINOP, vsub, v2sf, v4sf) 117VAR2 (BINOP, vsub, v8hf, v4hf) 118VAR3 (BINOP, vsubls, v8qi, v4hi, v2si) 119VAR3 (BINOP, vsublu, v8qi, v4hi, v2si) 120VAR3 (BINOP, vsubws, v8qi, v4hi, v2si) 121VAR3 (BINOP, vsubwu, v8qi, v4hi, v2si) 122VAR8 (BINOP, vqsubs, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 123VAR8 (BINOP, vqsubu, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 124VAR6 (BINOP, vhsubs, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 125VAR6 (BINOP, vhsubu, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 126VAR3 (BINOP, vsubhn, v8hi, v4si, v2di) 127VAR3 (BINOP, vrsubhn, v8hi, v4si, v2di) 128VAR8 (BINOP, vceq, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) 129VAR8 (BINOP, vcge, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) 130VAR6 (BINOP, vcgeu, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 131VAR8 (BINOP, vcgt, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) 132VAR6 (BINOP, vcgtu, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 133VAR2 (BINOP, vcage, v2sf, v4sf) 134VAR2 (BINOP, vcagt, v2sf, v4sf) 135VAR2 (BINOP, vcage, v4hf, v8hf) 136VAR2 (BINOP, vcagt, v4hf, v8hf) 137VAR2 (BINOP, vcale, v4hf, v8hf) 138VAR2 (BINOP, vcalt, v4hf, v8hf) 139VAR2 (BINOP, vceq, v4hf, v8hf) 140VAR2 (BINOP, vcge, v4hf, v8hf) 141VAR2 (BINOP, vcgt, v4hf, v8hf) 142VAR2 (BINOP, vcle, v4hf, v8hf) 143VAR2 (BINOP, vclt, v4hf, v8hf) 144VAR2 (UNOP, vceqz, v4hf, v8hf) 145VAR2 (UNOP, vcgez, v4hf, v8hf) 146VAR2 (UNOP, vcgtz, v4hf, v8hf) 147VAR2 (UNOP, vclez, v4hf, v8hf) 148VAR2 (UNOP, vcltz, v4hf, v8hf) 149VAR6 (BINOP, vtst, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 150VAR6 (BINOP, vabds, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 151VAR6 (BINOP, vabdu, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 152VAR2 (BINOP, vabdf, v2sf, v4sf) 153VAR3 (BINOP, vabdls, v8qi, v4hi, v2si) 154VAR3 (BINOP, vabdlu, v8qi, v4hi, v2si) 155VAR2 (BINOP, vabd, v8hf, v4hf) 156 157VAR6 (TERNOP, vabas, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 158VAR6 (TERNOP, vabau, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 159VAR3 (TERNOP, vabals, v8qi, v4hi, v2si) 160VAR3 (TERNOP, vabalu, v8qi, v4hi, v2si) 161 162VAR6 (BINOP, vmaxs, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 163VAR6 (BINOP, vmaxu, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 164VAR2 (BINOP, vmaxf, v2sf, v4sf) 165VAR2 (BINOP, vmaxf, v8hf, v4hf) 166VAR4 (BINOP, vmaxnm, v2sf, v4sf, v4hf, v8hf) 167VAR6 (BINOP, vmins, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 168VAR6 (BINOP, vminu, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 169VAR2 (BINOP, vminf, v2sf, v4sf) 170VAR2 (BINOP, vminf, v4hf, v8hf) 171VAR4 (BINOP, vminnm, v2sf, v4sf, v8hf, v4hf) 172 173VAR3 (BINOP, vpmaxs, v8qi, v4hi, v2si) 174VAR3 (BINOP, vpmaxu, v8qi, v4hi, v2si) 175VAR1 (BINOP, vpmaxf, v2sf) 176VAR1 (BINOP, vpmaxf, v4hf) 177VAR3 (BINOP, vpmins, v8qi, v4hi, v2si) 178VAR3 (BINOP, vpminu, v8qi, v4hi, v2si) 179VAR1 (BINOP, vpminf, v2sf) 180VAR1 (BINOP, vpminf, v4hf) 181 182VAR4 (BINOP, vpadd, v8qi, v4hi, v2si, v2sf) 183VAR1 (BINOP, vpadd, v4hf) 184VAR6 (UNOP, vpaddls, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 185VAR6 (UNOP, vpaddlu, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 186VAR6 (BINOP, vpadals, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 187VAR6 (BINOP, vpadalu, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 188VAR2 (BINOP, vrecps, v2sf, v4sf) 189VAR2 (BINOP, vrsqrts, v2sf, v4sf) 190VAR2 (BINOP, vrecps, v4hf, v8hf) 191VAR2 (BINOP, vrsqrts, v4hf, v8hf) 192VAR8 (TERNOP_IMM, vsri_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 193VAR8 (TERNOP_IMM, vsli_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di) 194VAR8 (UNOP, vabs, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) 195VAR2 (UNOP, vabs, v8hf, v4hf) 196VAR2 (UNOP, vneg, v8hf, v4hf) 197VAR6 (UNOP, vqabs, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 198VAR8 (UNOP, vneg, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) 199VAR6 (UNOP, vqneg, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 200VAR6 (UNOP, vcls, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 201VAR6 (UNOP, vclz, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 202VAR5 (BSWAP, bswap, v4hi, v8hi, v2si, v4si, v2di) 203VAR2 (UNOP, vcnt, v8qi, v16qi) 204VAR4 (UNOP, vrecpe, v2si, v2sf, v4si, v4sf) 205VAR2 (UNOP, vrecpe, v8hf, v4hf) 206VAR4 (UNOP, vrsqrte, v2si, v2sf, v4si, v4sf) 207VAR2 (UNOP, vrsqrte, v4hf, v8hf) 208VAR6 (UNOP, vmvn, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 209VAR2 (UNOP, vrnd, v8hf, v4hf) 210VAR2 (UNOP, vrnda, v8hf, v4hf) 211VAR2 (UNOP, vrndm, v8hf, v4hf) 212VAR2 (UNOP, vrndn, v8hf, v4hf) 213VAR2 (UNOP, vrndp, v8hf, v4hf) 214VAR2 (UNOP, vrndx, v8hf, v4hf) 215 /* FIXME: vget_lane supports more variants than this! */ 216VAR10 (GETLANE, vget_lane, 217 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) 218VAR6 (GETLANE, vget_laneu, v8qi, v4hi, v2si, v16qi, v8hi, v4si) 219VAR10 (SETLANE, vset_lane, 220 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) 221VAR5 (UNOP, vcreate, v8qi, v4hi, v2si, v2sf, di) 222VAR10 (UNOP, vdup_n, 223 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) 224VAR4 (UNOP, vdup_n, v8hf, v4hf, v8bf, v4bf) 225VAR10 (GETLANE, vdup_lane, 226 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) 227VAR4 (GETLANE, vdup_lane, v8hf, v4hf, v8bf, v4bf) 228VAR7 (COMBINE, vcombine, v8qi, v4hi, v4hf, v2si, v2sf, di, v4bf) 229VAR7 (UNOP, vget_high, v16qi, v8hi, v8hf, v8bf, v4si, v4sf, v2di) 230VAR7 (UNOP, vget_low, v16qi, v8hi, v8hf, v8bf, v4si, v4sf, v2di) 231VAR3 (UNOP, vmovn, v8hi, v4si, v2di) 232VAR3 (UNOP, vqmovns, v8hi, v4si, v2di) 233VAR3 (UNOP, vqmovnu, v8hi, v4si, v2di) 234VAR3 (UNOP, vqmovun, v8hi, v4si, v2di) 235VAR3 (UNOP, vmovls, v8qi, v4hi, v2si) 236VAR3 (UNOP, vmovlu, v8qi, v4hi, v2si) 237VAR8 (SETLANE, vmul_lane, v4hi, v2si, v2sf, v8hi, v4si, v4sf, v4hf, v8hf) 238VAR6 (MAC_LANE, vmla_lane, v4hi, v2si, v2sf, v8hi, v4si, v4sf) 239VAR2 (MAC_LANE, vmlals_lane, v4hi, v2si) 240VAR2 (MAC_LANE, vmlalu_lane, v4hi, v2si) 241VAR2 (MAC_LANE, vqdmlal_lane, v4hi, v2si) 242VAR6 (MAC_LANE, vmls_lane, v4hi, v2si, v2sf, v8hi, v4si, v4sf) 243VAR2 (MAC_LANE, vmlsls_lane, v4hi, v2si) 244VAR2 (MAC_LANE, vmlslu_lane, v4hi, v2si) 245VAR2 (MAC_LANE, vqdmlsl_lane, v4hi, v2si) 246VAR8 (BINOP, vmul_n, v4hi, v2si, v2sf, v8hi, v4si, v4sf, v4hf, v8hf) 247VAR6 (MAC_N, vmla_n, v4hi, v2si, v2sf, v8hi, v4si, v4sf) 248VAR2 (MAC_N, vmlals_n, v4hi, v2si) 249VAR2 (MAC_N, vmlalu_n, v4hi, v2si) 250VAR2 (MAC_N, vqdmlal_n, v4hi, v2si) 251VAR6 (MAC_N, vmls_n, v4hi, v2si, v2sf, v8hi, v4si, v4sf) 252VAR2 (MAC_N, vmlsls_n, v4hi, v2si) 253VAR2 (MAC_N, vmlslu_n, v4hi, v2si) 254VAR2 (MAC_N, vqdmlsl_n, v4hi, v2si) 255VAR10 (SETLANE, vext, 256 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) 257VAR2 (SETLANE, vext, v8hf, v4hf) 258VAR8 (UNOP, vrev64, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf) 259VAR4 (UNOP, vrev32, v8qi, v4hi, v16qi, v8hi) 260VAR2 (UNOP, vrev16, v8qi, v16qi) 261VAR4 (UNOP, vcvts, v2si, v2sf, v4si, v4sf) 262VAR2 (UNOP, vcvts, v4hi, v8hi) 263VAR2 (UNOP, vcvts, v4hf, v8hf) 264VAR2 (UNOP, vcvtu, v4hi, v8hi) 265VAR2 (UNOP, vcvtu, v4hf, v8hf) 266VAR4 (UNOP, vcvtu, v2si, v2sf, v4si, v4sf) 267VAR4 (BINOP, vcvts_n, v2si, v2sf, v4si, v4sf) 268VAR4 (BINOP, vcvtu_n, v2si, v2sf, v4si, v4sf) 269VAR2 (BINOP, vcvts_n, v4hf, v8hf) 270VAR2 (BINOP, vcvtu_n, v4hi, v8hi) 271VAR2 (BINOP, vcvts_n, v4hi, v8hi) 272VAR2 (BINOP, vcvtu_n, v4hf, v8hf) 273VAR1 (UNOP, vcvtv4sf, v4hf) 274VAR1 (UNOP, vcvtv4hf, v4sf) 275VAR10 (TERNOP, vbsl, 276 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) 277VAR2 (TERNOP, vbsl, v8hf, v4hf) 278VAR2 (UNOP, copysignf, v2sf, v4sf) 279VAR2 (UNOP, vrintn, v2sf, v4sf) 280VAR2 (UNOP, vrinta, v2sf, v4sf) 281VAR2 (UNOP, vrintp, v2sf, v4sf) 282VAR2 (UNOP, vrintm, v2sf, v4sf) 283VAR2 (UNOP, vrintz, v2sf, v4sf) 284VAR2 (UNOP, vrintx, v2sf, v4sf) 285VAR1 (UNOP, vcvtav2sf, v2si) 286VAR1 (UNOP, vcvtav4sf, v4si) 287VAR1 (UNOP, vcvtauv2sf, v2si) 288VAR1 (UNOP, vcvtauv4sf, v4si) 289VAR2 (UNOP, vcvtas, v4hf, v8hf) 290VAR2 (UNOP, vcvtau, v4hf, v8hf) 291VAR2 (UNOP, vcvtms, v4hf, v8hf) 292VAR2 (UNOP, vcvtmu, v4hf, v8hf) 293VAR2 (UNOP, vcvtns, v4hf, v8hf) 294VAR2 (UNOP, vcvtnu, v4hf, v8hf) 295VAR2 (UNOP, vcvtps, v4hf, v8hf) 296VAR2 (UNOP, vcvtpu, v4hf, v8hf) 297VAR1 (UNOP, vcvtpv2sf, v2si) 298VAR1 (UNOP, vcvtpv4sf, v4si) 299VAR1 (UNOP, vcvtpuv2sf, v2si) 300VAR1 (UNOP, vcvtpuv4sf, v4si) 301VAR1 (UNOP, vcvtmv2sf, v2si) 302VAR1 (UNOP, vcvtmv4sf, v4si) 303VAR1 (UNOP, vcvtmuv2sf, v2si) 304VAR1 (UNOP, vcvtmuv4sf, v4si) 305VAR1 (COMBINE, vtbl1, v8qi) 306VAR1 (COMBINE, vtbl2, v8qi) 307VAR1 (COMBINE, vtbl3, v8qi) 308VAR1 (COMBINE, vtbl4, v8qi) 309VAR1 (TERNOP, vtbx1, v8qi) 310VAR1 (TERNOP, vtbx2, v8qi) 311VAR1 (TERNOP, vtbx3, v8qi) 312VAR1 (TERNOP, vtbx4, v8qi) 313VAR14 (LOAD1, vld1, 314 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf, v2di, 315 v4bf, v8bf) 316VAR12 (LOAD1LANE, vld1_lane, 317 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di, v4bf, v8bf) 318VAR10 (LOAD1, vld1_dup, 319 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di) 320VAR14 (STORE1, vst1, 321 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf, v2di, 322 v4bf, v8bf) 323VAR14 (STORE1LANE, vst1_lane, 324 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf, v2di, v4bf, v8bf) 325VAR13 (LOAD1, vld2, 326 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf, v4bf, v8bf) 327VAR11 (LOAD1LANE, vld2_lane, 328 v8qi, v4hi, v4hf, v2si, v2sf, v8hi, v8hf, v4si, v4sf, v4bf, v8bf) 329VAR8 (LOAD1, vld2_dup, v8qi, v4hi, v4hf, v2si, v2sf, di, v4bf, v8bf) 330VAR13 (STORE1, vst2, 331 v8qi, v4hi, v4hf, v4bf, v2si, v2sf, di, v16qi, v8hi, v8hf, v8bf, v4si, v4sf) 332VAR11 (STORE1LANE, vst2_lane, 333 v8qi, v4hi, v4hf, v2si, v2sf, v8hi, v8hf, v4si, v4sf, v4bf, v8bf) 334VAR13 (LOAD1, vld3, 335 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf, v4bf, v8bf) 336VAR11 (LOAD1LANE, vld3_lane, 337 v8qi, v4hi, v4hf, v2si, v2sf, v8hi, v8hf, v4si, v4sf, v4bf, v8bf) 338VAR8 (LOAD1, vld3_dup, v8qi, v4hi, v4hf, v2si, v2sf, di, v4bf, v8bf) 339VAR13 (STORE1, vst3, 340 v8qi, v4hi, v4hf, v4bf, v2si, v2sf, di, v16qi, v8hi, v8hf, v8bf, v4si, v4sf) 341VAR11 (STORE1LANE, vst3_lane, 342 v8qi, v4hi, v4hf, v2si, v2sf, v8hi, v8hf, v4si, v4sf, v4bf, v8bf) 343VAR13 (LOAD1, vld4, 344 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf, v4bf, v8bf) 345VAR11 (LOAD1LANE, vld4_lane, 346 v8qi, v4hi, v4hf, v2si, v2sf, v8hi, v8hf, v4si, v4sf, v4bf, v8bf) 347VAR8 (LOAD1, vld4_dup, v8qi, v4hi, v4hf, v2si, v2sf, di, v4bf, v8bf) 348VAR13 (STORE1, vst4, 349 v8qi, v4hi, v4hf, v4bf, v2si, v2sf, di, v16qi, v8hi, v8hf, v8bf, v4si, v4sf) 350VAR11 (STORE1LANE, vst4_lane, 351 v8qi, v4hi, v4hf, v2si, v2sf, v8hi, v8hf, v4si, v4sf, v4bf, v8bf) 352VAR2 (TERNOP, sdot, v8qi, v16qi) 353VAR2 (UTERNOP, udot, v8qi, v16qi) 354VAR2 (MAC_LANE, sdot_lane, v8qi, v16qi) 355VAR2 (UMAC_LANE, udot_lane, v8qi, v16qi) 356 357VAR1 (USTERNOP, usdot, v8qi) 358VAR2 (USMAC_LANE_QUADTUP, usdot_lane, v8qi, v16qi) 359VAR2 (SUMAC_LANE_QUADTUP, sudot_lane, v8qi, v16qi) 360 361VAR4 (BINOP, vcadd90, v4hf, v2sf, v8hf, v4sf) 362VAR4 (BINOP, vcadd270, v4hf, v2sf, v8hf, v4sf) 363VAR4 (TERNOP, vcmla0, v2sf, v4sf, v4hf, v8hf) 364VAR4 (TERNOP, vcmla90, v2sf, v4sf, v4hf, v8hf) 365VAR4 (TERNOP, vcmla180, v2sf, v4sf, v4hf, v8hf) 366VAR4 (TERNOP, vcmla270, v2sf, v4sf, v4hf, v8hf) 367 368VAR4 (MAC_LANE_PAIR, vcmla_lane0, v2sf, v4hf, v8hf, v4sf) 369VAR4 (MAC_LANE_PAIR, vcmla_lane90, v2sf, v4hf, v8hf, v4sf) 370VAR4 (MAC_LANE_PAIR, vcmla_lane180, v2sf, v4hf, v8hf, v4sf) 371VAR4 (MAC_LANE_PAIR, vcmla_lane270, v2sf, v4hf, v8hf, v4sf) 372 373VAR2 (MAC_LANE_PAIR, vcmla_laneq0, v2sf, v4hf) 374VAR2 (MAC_LANE_PAIR, vcmla_laneq90, v2sf, v4hf) 375VAR2 (MAC_LANE_PAIR, vcmla_laneq180, v2sf, v4hf) 376VAR2 (MAC_LANE_PAIR, vcmla_laneq270, v2sf, v4hf) 377 378VAR2 (MAC_LANE_PAIR, vcmlaq_lane0, v4sf, v8hf) 379VAR2 (MAC_LANE_PAIR, vcmlaq_lane90, v4sf, v8hf) 380VAR2 (MAC_LANE_PAIR, vcmlaq_lane180, v4sf, v8hf) 381VAR2 (MAC_LANE_PAIR, vcmlaq_lane270, v4sf, v8hf) 382 383VAR1 (TERNOP, smmla, v16qi) 384VAR1 (UTERNOP, ummla, v16qi) 385VAR1 (USTERNOP, usmmla, v16qi) 386 387VAR2 (TERNOP, vbfdot, v2sf, v4sf) 388VAR2 (MAC_LANE_PAIR, vbfdot_lanev4bf, v2sf, v4sf) 389VAR2 (MAC_LANE_PAIR, vbfdot_lanev8bf, v2sf, v4sf) 390 391VAR2 (UNOP, vbfcvt, sf, bf) 392VAR2 (UNOP, vbfcvt, v4bf, v8bf) 393VAR1 (UNOP, vbfcvt_high, v8bf) 394VAR2 (UNOP, vbfcvtv4sf, v4bf, v8bf) 395VAR1 (BINOP, vbfcvtv4sf_high, v8bf) 396 397VAR1 (TERNOP, vmmla, v8bf) 398 399VAR1 (TERNOP, vfmab, v8bf) 400VAR1 (TERNOP, vfmat, v8bf) 401VAR1 (MAC_LANE, vfmab_lane, v8bf) 402VAR1 (MAC_LANE, vfmat_lane, v8bf) 403VAR1 (MAC_LANE, vfmab_laneq, v8bf) 404VAR1 (MAC_LANE, vfmat_laneq, v8bf) 405