* config/pa/linux-atomic.c (__kernel_cmpxchg): Reorder arguments to
[official-gcc.git] / gcc / config / mips / mips-ftypes.def
blobd56accc32e3e0c14215a9e96f02175435daf824e
1 /* Definitions of prototypes for MIPS built-in functions. -*- C -*-
2 Copyright (C) 2007-2015 Free Software Foundation, Inc.
4 This file is part of GCC.
6 GCC is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 3, or (at your option)
9 any later version.
11 GCC is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with GCC; see the file COPYING3. If not see
18 <http://www.gnu.org/licenses/>. */
20 /* Invoke DEF_MIPS_FTYPE (NARGS, LIST) for each prototype used by
21 MIPS built-in functions, where:
23 NARGS is the number of arguments.
24 LIST contains the return-type code followed by the codes for each
25 argument type.
27 Argument- and return-type codes are either modes or one of the following:
29 VOID for void_type_node
30 INT for integer_type_node
31 POINTER for ptr_type_node
33 (we don't use PTR because that's a ANSI-compatibillity macro).
35 Please keep this list lexicographically sorted by the LIST argument. */
36 DEF_MIPS_FTYPE (1, (DF, DF))
37 DEF_MIPS_FTYPE (2, (DF, DF, DF))
39 DEF_MIPS_FTYPE (2, (DI, DI, DI))
40 DEF_MIPS_FTYPE (2, (DI, DI, SI))
41 DEF_MIPS_FTYPE (3, (DI, DI, SI, SI))
42 DEF_MIPS_FTYPE (3, (DI, DI, USI, USI))
43 DEF_MIPS_FTYPE (3, (DI, DI, V2HI, V2HI))
44 DEF_MIPS_FTYPE (3, (DI, DI, V4QI, V4QI))
45 DEF_MIPS_FTYPE (2, (DI, SI, SI))
46 DEF_MIPS_FTYPE (2, (DI, USI, USI))
48 DEF_MIPS_FTYPE (2, (INT, DF, DF))
49 DEF_MIPS_FTYPE (2, (INT, SF, SF))
50 DEF_MIPS_FTYPE (2, (INT, V2SF, V2SF))
51 DEF_MIPS_FTYPE (4, (INT, V2SF, V2SF, V2SF, V2SF))
53 DEF_MIPS_FTYPE (2, (SI, DI, SI))
54 DEF_MIPS_FTYPE (2, (SI, POINTER, SI))
55 DEF_MIPS_FTYPE (2, (DI, POINTER, SI))
56 DEF_MIPS_FTYPE (1, (SI, SI))
57 DEF_MIPS_FTYPE (2, (SI, SI, SI))
58 DEF_MIPS_FTYPE (3, (SI, SI, SI, SI))
59 DEF_MIPS_FTYPE (1, (SI, V2HI))
60 DEF_MIPS_FTYPE (2, (SI, V2HI, V2HI))
61 DEF_MIPS_FTYPE (1, (SI, V4QI))
62 DEF_MIPS_FTYPE (2, (SI, V4QI, V4QI))
63 DEF_MIPS_FTYPE (1, (SI, VOID))
65 DEF_MIPS_FTYPE (1, (SF, SF))
66 DEF_MIPS_FTYPE (2, (SF, SF, SF))
67 DEF_MIPS_FTYPE (1, (SF, V2SF))
69 DEF_MIPS_FTYPE (2, (UDI, UDI, UDI))
70 DEF_MIPS_FTYPE (2, (UDI, UV2SI, UV2SI))
72 DEF_MIPS_FTYPE (1, (USI, VOID))
74 DEF_MIPS_FTYPE (2, (UV2SI, UV2SI, UQI))
75 DEF_MIPS_FTYPE (2, (UV2SI, UV2SI, UV2SI))
77 DEF_MIPS_FTYPE (2, (UV4HI, UV4HI, UQI))
78 DEF_MIPS_FTYPE (2, (UV4HI, UV4HI, USI))
79 DEF_MIPS_FTYPE (3, (UV4HI, UV4HI, UV4HI, UQI))
80 DEF_MIPS_FTYPE (3, (UV4HI, UV4HI, UV4HI, USI))
81 DEF_MIPS_FTYPE (2, (UV4HI, UV4HI, UV4HI))
82 DEF_MIPS_FTYPE (1, (UV4HI, UV8QI))
83 DEF_MIPS_FTYPE (2, (UV4HI, UV8QI, UV8QI))
85 DEF_MIPS_FTYPE (2, (UV8QI, UV4HI, UV4HI))
86 DEF_MIPS_FTYPE (1, (UV8QI, UV8QI))
87 DEF_MIPS_FTYPE (2, (UV8QI, UV8QI, UV8QI))
89 DEF_MIPS_FTYPE (1, (V2HI, SI))
90 DEF_MIPS_FTYPE (2, (V2HI, SI, SI))
91 DEF_MIPS_FTYPE (3, (V2HI, SI, SI, SI))
92 DEF_MIPS_FTYPE (1, (V2HI, V2HI))
93 DEF_MIPS_FTYPE (2, (V2HI, V2HI, SI))
94 DEF_MIPS_FTYPE (2, (V2HI, V2HI, V2HI))
95 DEF_MIPS_FTYPE (1, (V2HI, V4QI))
96 DEF_MIPS_FTYPE (2, (V2HI, V4QI, V2HI))
98 DEF_MIPS_FTYPE (2, (V2SF, SF, SF))
99 DEF_MIPS_FTYPE (1, (V2SF, V2SF))
100 DEF_MIPS_FTYPE (2, (V2SF, V2SF, V2SF))
101 DEF_MIPS_FTYPE (3, (V2SF, V2SF, V2SF, INT))
102 DEF_MIPS_FTYPE (4, (V2SF, V2SF, V2SF, V2SF, V2SF))
104 DEF_MIPS_FTYPE (2, (V2SI, V2SI, UQI))
105 DEF_MIPS_FTYPE (2, (V2SI, V2SI, V2SI))
106 DEF_MIPS_FTYPE (2, (V2SI, V4HI, V4HI))
108 DEF_MIPS_FTYPE (2, (V4HI, V2SI, V2SI))
109 DEF_MIPS_FTYPE (2, (V4HI, V4HI, UQI))
110 DEF_MIPS_FTYPE (2, (V4HI, V4HI, USI))
111 DEF_MIPS_FTYPE (2, (V4HI, V4HI, V4HI))
112 DEF_MIPS_FTYPE (3, (V4HI, V4HI, V4HI, UQI))
113 DEF_MIPS_FTYPE (3, (V4HI, V4HI, V4HI, USI))
115 DEF_MIPS_FTYPE (1, (V4QI, SI))
116 DEF_MIPS_FTYPE (2, (V4QI, V2HI, V2HI))
117 DEF_MIPS_FTYPE (1, (V4QI, V4QI))
118 DEF_MIPS_FTYPE (2, (V4QI, V4QI, SI))
119 DEF_MIPS_FTYPE (2, (V4QI, V4QI, V4QI))
121 DEF_MIPS_FTYPE (2, (V8QI, V4HI, V4HI))
122 DEF_MIPS_FTYPE (1, (V8QI, V8QI))
123 DEF_MIPS_FTYPE (2, (V8QI, V8QI, V8QI))
125 DEF_MIPS_FTYPE (2, (VOID, SI, CVPOINTER))
126 DEF_MIPS_FTYPE (2, (VOID, SI, SI))
127 DEF_MIPS_FTYPE (1, (VOID, USI))
128 DEF_MIPS_FTYPE (2, (VOID, V2HI, V2HI))
129 DEF_MIPS_FTYPE (2, (VOID, V4QI, V4QI))