(root)/
gcc-13.2.0/
gcc/
config/
riscv/
riscv-vector-builtins-shapes.h
       1  /* function_shape declaration for RISC-V 'V' Extension for GNU compiler.
       2     Copyright (C) 2022-2023 Free Software Foundation, Inc.
       3     Contributed by Ju-Zhe Zhong (juzhe.zhong@rivai.ai), RiVAI Technologies 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 by
       9     the Free Software Foundation; either version 3, or (at your option)
      10     any later version.
      11  
      12     GCC is distributed in the hope that it will be useful, but
      13     WITHOUT ANY WARRANTY; without even the implied warranty of
      14     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      15     General Public 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  
      21  #ifndef GCC_RISCV_VECTOR_BUILTINS_SHAPES_H
      22  #define GCC_RISCV_VECTOR_BUILTINS_SHAPES_H
      23  
      24  namespace riscv_vector {
      25  
      26  namespace shapes {
      27  extern const function_shape *const vsetvl;
      28  extern const function_shape *const vsetvlmax;
      29  extern const function_shape *const loadstore;
      30  extern const function_shape *const indexed_loadstore;
      31  extern const function_shape *const alu;
      32  extern const function_shape *const widen_alu;
      33  extern const function_shape *const no_mask_policy;
      34  extern const function_shape *const return_mask;
      35  extern const function_shape *const narrow_alu;
      36  extern const function_shape *const move;
      37  extern const function_shape *const mask_alu;
      38  extern const function_shape *const reduc_alu;
      39  extern const function_shape *const scalar_move;
      40  extern const function_shape *const vundefined;
      41  extern const function_shape *const misc;
      42  extern const function_shape *const vset;
      43  extern const function_shape *const vget;
      44  extern const function_shape *const read_vl;
      45  extern const function_shape *const fault_load;
      46  extern const function_shape *const vlenb;
      47  }
      48  
      49  } // end namespace riscv_vector
      50  
      51  #endif