]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config/riscv/riscv-vector-builtins-bases.h
RISC-V: Add vsext C++ API tests
[thirdparty/gcc.git] / gcc / config / riscv / riscv-vector-builtins-bases.h
CommitLineData
f56d48b2 1/* function_base declaration for RISC-V 'V' Extension for GNU compiler.
83ffe9cd 2 Copyright (C) 2022-2023 Free Software Foundation, Inc.
f56d48b2
JZZ
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_BASES_H
22#define GCC_RISCV_VECTOR_BUILTINS_BASES_H
23
24namespace riscv_vector {
25
26namespace bases {
27extern const function_base *const vsetvl;
28extern const function_base *const vsetvlmax;
a143c3f7
JZZ
29extern const function_base *const vle;
30extern const function_base *const vse;
ab39fa8c
JZZ
31extern const function_base *const vlm;
32extern const function_base *const vsm;
eb1c2960
JZZ
33extern const function_base *const vlse;
34extern const function_base *const vsse;
6c9bcb6c
JZZ
35extern const function_base *const vluxei8;
36extern const function_base *const vluxei16;
37extern const function_base *const vluxei32;
38extern const function_base *const vluxei64;
39extern const function_base *const vloxei8;
40extern const function_base *const vloxei16;
41extern const function_base *const vloxei32;
42extern const function_base *const vloxei64;
43extern const function_base *const vsuxei8;
44extern const function_base *const vsuxei16;
45extern const function_base *const vsuxei32;
46extern const function_base *const vsuxei64;
47extern const function_base *const vsoxei8;
48extern const function_base *const vsoxei16;
49extern const function_base *const vsoxei32;
50extern const function_base *const vsoxei64;
2a937fb5
JZZ
51extern const function_base *const vadd;
52extern const function_base *const vsub;
a035d133 53extern const function_base *const vrsub;
2a937fb5
JZZ
54extern const function_base *const vand;
55extern const function_base *const vor;
56extern const function_base *const vxor;
57extern const function_base *const vsll;
58extern const function_base *const vsra;
59extern const function_base *const vsrl;
60extern const function_base *const vmin;
61extern const function_base *const vmax;
62extern const function_base *const vminu;
63extern const function_base *const vmaxu;
64extern const function_base *const vmul;
65extern const function_base *const vdiv;
66extern const function_base *const vrem;
67extern const function_base *const vdivu;
68extern const function_base *const vremu;
d7f8c79a
JZZ
69extern const function_base *const vneg;
70extern const function_base *const vnot;
99fa5d94
JZZ
71extern const function_base *const vsext;
72extern const function_base *const vzext;
7ad729a0
JZZ
73extern const function_base *const vsadd;
74extern const function_base *const vssub;
75extern const function_base *const vsaddu;
76extern const function_base *const vssubu;
f56d48b2
JZZ
77}
78
79} // end namespace riscv_vector
80
81#endif