blob: 00bf17c403db6beddd56dc76b612eb276960e34e [file] [log] [blame]
/* ACLE support for AArch64 SVE (__ARM_FEATURE_SVE intrinsics)
Copyright (C) 2020-2021 Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.
GCC is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
#ifndef GCC_AARCH64_SVE_BUILTINS_SVE2_H
#define GCC_AARCH64_SVE_BUILTINS_SVE2_H
namespace aarch64_sve
{
namespace functions
{
extern const function_base *const svaba;
extern const function_base *const svabalb;
extern const function_base *const svabalt;
extern const function_base *const svabdlb;
extern const function_base *const svabdlt;
extern const function_base *const svadalp;
extern const function_base *const svadclb;
extern const function_base *const svadclt;
extern const function_base *const svaddhnb;
extern const function_base *const svaddhnt;
extern const function_base *const svaddlb;
extern const function_base *const svaddlbt;
extern const function_base *const svaddlt;
extern const function_base *const svaddp;
extern const function_base *const svaddwb;
extern const function_base *const svaddwt;
extern const function_base *const svaesd;
extern const function_base *const svaese;
extern const function_base *const svaesimc;
extern const function_base *const svaesmc;
extern const function_base *const svbcax;
extern const function_base *const svbdep;
extern const function_base *const svbext;
extern const function_base *const svbgrp;
extern const function_base *const svbsl;
extern const function_base *const svbsl1n;
extern const function_base *const svbsl2n;
extern const function_base *const svcdot;
extern const function_base *const svcdot_lane;
extern const function_base *const svcvtlt;
extern const function_base *const svcvtx;
extern const function_base *const svcvtxnt;
extern const function_base *const sveor3;
extern const function_base *const sveorbt;
extern const function_base *const sveortb;
extern const function_base *const svhadd;
extern const function_base *const svhistcnt;
extern const function_base *const svhistseg;
extern const function_base *const svhsub;
extern const function_base *const svhsubr;
extern const function_base *const svldnt1_gather;
extern const function_base *const svldnt1sb_gather;
extern const function_base *const svldnt1sh_gather;
extern const function_base *const svldnt1sw_gather;
extern const function_base *const svldnt1ub_gather;
extern const function_base *const svldnt1uh_gather;
extern const function_base *const svldnt1uw_gather;
extern const function_base *const svlogb;
extern const function_base *const svmatch;
extern const function_base *const svmaxp;
extern const function_base *const svmaxnmp;
extern const function_base *const svmlalb;
extern const function_base *const svmlalb_lane;
extern const function_base *const svmlalt;
extern const function_base *const svmlalt_lane;
extern const function_base *const svmlslb;
extern const function_base *const svmlslb_lane;
extern const function_base *const svmlslt;
extern const function_base *const svmlslt_lane;
extern const function_base *const svminp;
extern const function_base *const svminnmp;
extern const function_base *const svmovlb;
extern const function_base *const svmovlt;
extern const function_base *const svmullb;
extern const function_base *const svmullb_lane;
extern const function_base *const svmullt;
extern const function_base *const svmullt_lane;
extern const function_base *const svnbsl;
extern const function_base *const svnmatch;
extern const function_base *const svpmul;
extern const function_base *const svpmullb;
extern const function_base *const svpmullb_pair;
extern const function_base *const svpmullt;
extern const function_base *const svpmullt_pair;
extern const function_base *const svqabs;
extern const function_base *const svqcadd;
extern const function_base *const svqdmlalb;
extern const function_base *const svqdmlalb_lane;
extern const function_base *const svqdmlalbt;
extern const function_base *const svqdmlalt;
extern const function_base *const svqdmlalt_lane;
extern const function_base *const svqdmlslb;
extern const function_base *const svqdmlslb_lane;
extern const function_base *const svqdmlslbt;
extern const function_base *const svqdmlslt;
extern const function_base *const svqdmlslt_lane;
extern const function_base *const svqdmulh;
extern const function_base *const svqdmulh_lane;
extern const function_base *const svqdmullb;
extern const function_base *const svqdmullb_lane;
extern const function_base *const svqdmullt;
extern const function_base *const svqdmullt_lane;
extern const function_base *const svqneg;
extern const function_base *const svqrdcmlah;
extern const function_base *const svqrdcmlah_lane;
extern const function_base *const svqrdmulh;
extern const function_base *const svqrdmulh_lane;
extern const function_base *const svqrdmlah;
extern const function_base *const svqrdmlah_lane;
extern const function_base *const svqrdmlsh;
extern const function_base *const svqrdmlsh_lane;
extern const function_base *const svqrshl;
extern const function_base *const svqrshrnb;
extern const function_base *const svqrshrnt;
extern const function_base *const svqrshrunb;
extern const function_base *const svqrshrunt;
extern const function_base *const svqshl;
extern const function_base *const svqshlu;
extern const function_base *const svqshrnb;
extern const function_base *const svqshrnt;
extern const function_base *const svqshrunb;
extern const function_base *const svqshrunt;
extern const function_base *const svqsubr;
extern const function_base *const svqxtnb;
extern const function_base *const svqxtnt;
extern const function_base *const svqxtunb;
extern const function_base *const svqxtunt;
extern const function_base *const svraddhnb;
extern const function_base *const svraddhnt;
extern const function_base *const svrax1;
extern const function_base *const svrhadd;
extern const function_base *const svrshl;
extern const function_base *const svrshr;
extern const function_base *const svrshrnb;
extern const function_base *const svrshrnt;
extern const function_base *const svrsra;
extern const function_base *const svrsubhnb;
extern const function_base *const svrsubhnt;
extern const function_base *const svsbclb;
extern const function_base *const svsbclt;
extern const function_base *const svshllb;
extern const function_base *const svshllt;
extern const function_base *const svshrnb;
extern const function_base *const svshrnt;
extern const function_base *const svsli;
extern const function_base *const svsm4e;
extern const function_base *const svsm4ekey;
extern const function_base *const svsqadd;
extern const function_base *const svsra;
extern const function_base *const svsri;
extern const function_base *const svstnt1_scatter;
extern const function_base *const svstnt1b_scatter;
extern const function_base *const svstnt1h_scatter;
extern const function_base *const svstnt1w_scatter;
extern const function_base *const svsubhnb;
extern const function_base *const svsubhnt;
extern const function_base *const svsublb;
extern const function_base *const svsublbt;
extern const function_base *const svsublt;
extern const function_base *const svsubltb;
extern const function_base *const svsubwb;
extern const function_base *const svsubwt;
extern const function_base *const svtbl2;
extern const function_base *const svtbx;
extern const function_base *const svuqadd;
extern const function_base *const svwhilege;
extern const function_base *const svwhilegt;
extern const function_base *const svwhilerw;
extern const function_base *const svwhilewr;
extern const function_base *const svxar;
}
}
#endif