Home | History | Annotate | Line # | Download | only in aarch64
aarch64-sve-builtins-sme.h revision 1.1
      1  1.1  mrg /* ACLE support for AArch64 SME.
      2  1.1  mrg    Copyright (C) 2023-2024 Free Software Foundation, Inc.
      3  1.1  mrg 
      4  1.1  mrg    This file is part of GCC.
      5  1.1  mrg 
      6  1.1  mrg    GCC is free software; you can redistribute it and/or modify it
      7  1.1  mrg    under the terms of the GNU General Public License as published by
      8  1.1  mrg    the Free Software Foundation; either version 3, or (at your option)
      9  1.1  mrg    any later version.
     10  1.1  mrg 
     11  1.1  mrg    GCC is distributed in the hope that it will be useful, but
     12  1.1  mrg    WITHOUT ANY WARRANTY; without even the implied warranty of
     13  1.1  mrg    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     14  1.1  mrg    General Public License for more details.
     15  1.1  mrg 
     16  1.1  mrg    You should have received a copy of the GNU General Public License
     17  1.1  mrg    along with GCC; see the file COPYING3.  If not see
     18  1.1  mrg    <http://www.gnu.org/licenses/>.  */
     19  1.1  mrg 
     20  1.1  mrg #ifndef GCC_AARCH64_SVE_BUILTINS_SME_H
     21  1.1  mrg #define GCC_AARCH64_SVE_BUILTINS_SME_H
     22  1.1  mrg 
     23  1.1  mrg namespace aarch64_sve
     24  1.1  mrg {
     25  1.1  mrg   namespace functions
     26  1.1  mrg   {
     27  1.1  mrg     extern const function_base *const arm_has_sme;
     28  1.1  mrg     extern const function_base *const arm_in_streaming_mode;
     29  1.1  mrg     extern const function_base *const svadd_za;
     30  1.1  mrg     extern const function_base *const svadd_write_za;
     31  1.1  mrg     extern const function_base *const svaddha_za;
     32  1.1  mrg     extern const function_base *const svaddva_za;
     33  1.1  mrg     extern const function_base *const svbmopa_za;
     34  1.1  mrg     extern const function_base *const svbmops_za;
     35  1.1  mrg     extern const function_base *const svcntsb;
     36  1.1  mrg     extern const function_base *const svcntsd;
     37  1.1  mrg     extern const function_base *const svcntsh;
     38  1.1  mrg     extern const function_base *const svcntsw;
     39  1.1  mrg     extern const function_base *const svdot_za;
     40  1.1  mrg     extern const function_base *const svdot_lane_za;
     41  1.1  mrg     extern const function_base *const svld1_hor_za;
     42  1.1  mrg     extern const function_base *const svld1_ver_za;
     43  1.1  mrg     extern const function_base *const svldr_za;
     44  1.1  mrg     extern const function_base *const svldr_zt;
     45  1.1  mrg     extern const function_base *const svluti2_lane_zt;
     46  1.1  mrg     extern const function_base *const svluti4_lane_zt;
     47  1.1  mrg     extern const function_base *const svmla_za;
     48  1.1  mrg     extern const function_base *const svmla_lane_za;
     49  1.1  mrg     extern const function_base *const svmls_za;
     50  1.1  mrg     extern const function_base *const svmls_lane_za;
     51  1.1  mrg     extern const function_base *const svmopa_za;
     52  1.1  mrg     extern const function_base *const svmops_za;
     53  1.1  mrg     extern const function_base *const svread_za;
     54  1.1  mrg     extern const function_base *const svread_hor_za;
     55  1.1  mrg     extern const function_base *const svread_ver_za;
     56  1.1  mrg     extern const function_base *const svst1_hor_za;
     57  1.1  mrg     extern const function_base *const svst1_ver_za;
     58  1.1  mrg     extern const function_base *const svstr_za;
     59  1.1  mrg     extern const function_base *const svstr_zt;
     60  1.1  mrg     extern const function_base *const svsub_za;
     61  1.1  mrg     extern const function_base *const svsub_write_za;
     62  1.1  mrg     extern const function_base *const svsudot_za;
     63  1.1  mrg     extern const function_base *const svsudot_lane_za;
     64  1.1  mrg     extern const function_base *const svsuvdot_lane_za;
     65  1.1  mrg     extern const function_base *const svsumopa_za;
     66  1.1  mrg     extern const function_base *const svsumops_za;
     67  1.1  mrg     extern const function_base *const svusdot_za;
     68  1.1  mrg     extern const function_base *const svusdot_lane_za;
     69  1.1  mrg     extern const function_base *const svusvdot_lane_za;
     70  1.1  mrg     extern const function_base *const svusmopa_za;
     71  1.1  mrg     extern const function_base *const svusmops_za;
     72  1.1  mrg     extern const function_base *const svwrite_za;
     73  1.1  mrg     extern const function_base *const svwrite_hor_za;
     74  1.1  mrg     extern const function_base *const svwrite_ver_za;
     75  1.1  mrg     extern const function_base *const svundef_za;
     76  1.1  mrg     extern const function_base *const svvdot_lane_za;
     77  1.1  mrg     extern const function_base *const svzero_mask_za;
     78  1.1  mrg     extern const function_base *const svzero_za;
     79  1.1  mrg     extern const function_base *const svzero_zt;
     80  1.1  mrg   }
     81  1.1  mrg }
     82  1.1  mrg 
     83  1.1  mrg #endif
     84