]> gcc.gnu.org Git - gcc.git/blame - gcc/libfuncs.h
re PR c++/10784 (Warning about choosing custom operator over copy constructor cannot...
[gcc.git] / gcc / libfuncs.h
CommitLineData
e78d8e51
ZW
1/* Definitions for code generation pass of GNU compiler.
2 Copyright (C) 2001 Free Software Foundation, Inc.
3
40803cd5 4This file is part of GCC.
e78d8e51 5
40803cd5 6GCC is free software; you can redistribute it and/or modify
e78d8e51
ZW
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 2, or (at your option)
9any later version.
10
40803cd5 11GCC is distributed in the hope that it will be useful,
e78d8e51
ZW
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
40803cd5 17along with GCC; see the file COPYING. If not, write to
e78d8e51
ZW
18the Free Software Foundation, 59 Temple Place - Suite 330,
19Boston, MA 02111-1307, USA. */
20
21#ifndef GCC_LIBFUNCS_H
22#define GCC_LIBFUNCS_H
23
24/* Enumeration of indexes into libfunc_table. */
25enum libfunc_index
26{
27 LTI_extendsfdf2,
28 LTI_extendsfxf2,
29 LTI_extendsftf2,
30 LTI_extenddfxf2,
31 LTI_extenddftf2,
32
33 LTI_truncdfsf2,
34 LTI_truncxfsf2,
35 LTI_trunctfsf2,
36 LTI_truncxfdf2,
37 LTI_trunctfdf2,
38
9602f5a0 39 LTI_abort,
e78d8e51
ZW
40 LTI_memcpy,
41 LTI_memmove,
42 LTI_bcopy,
43 LTI_memcmp,
44 LTI_bcmp,
45 LTI_memset,
46 LTI_bzero,
68d28100 47 LTI_setbits,
e78d8e51
ZW
48
49 LTI_unwind_resume,
50 LTI_eh_personality,
51 LTI_setjmp,
52 LTI_longjmp,
53 LTI_unwind_sjlj_register,
54 LTI_unwind_sjlj_unregister,
55
56 LTI_eqhf2,
57 LTI_nehf2,
58 LTI_gthf2,
59 LTI_gehf2,
60 LTI_lthf2,
61 LTI_lehf2,
62 LTI_unordhf2,
63
64 LTI_eqsf2,
65 LTI_nesf2,
66 LTI_gtsf2,
67 LTI_gesf2,
68 LTI_ltsf2,
69 LTI_lesf2,
70 LTI_unordsf2,
71
72 LTI_eqdf2,
73 LTI_nedf2,
74 LTI_gtdf2,
75 LTI_gedf2,
76 LTI_ltdf2,
77 LTI_ledf2,
78 LTI_unorddf2,
79
80 LTI_eqxf2,
81 LTI_nexf2,
82 LTI_gtxf2,
83 LTI_gexf2,
84 LTI_ltxf2,
85 LTI_lexf2,
86 LTI_unordxf2,
87
88 LTI_eqtf2,
89 LTI_netf2,
90 LTI_gttf2,
91 LTI_getf2,
92 LTI_lttf2,
93 LTI_letf2,
94 LTI_unordtf2,
95
96 LTI_floatsisf,
97 LTI_floatdisf,
98 LTI_floattisf,
99
100 LTI_floatsidf,
101 LTI_floatdidf,
102 LTI_floattidf,
103
104 LTI_floatsixf,
105 LTI_floatdixf,
106 LTI_floattixf,
107
108 LTI_floatsitf,
109 LTI_floatditf,
110 LTI_floattitf,
111
112 LTI_fixsfsi,
113 LTI_fixsfdi,
114 LTI_fixsfti,
115
116 LTI_fixdfsi,
117 LTI_fixdfdi,
118 LTI_fixdfti,
119
120 LTI_fixxfsi,
121 LTI_fixxfdi,
122 LTI_fixxfti,
123
124 LTI_fixtfsi,
125 LTI_fixtfdi,
126 LTI_fixtfti,
127
128 LTI_fixunssfsi,
129 LTI_fixunssfdi,
130 LTI_fixunssfti,
131
132 LTI_fixunsdfsi,
133 LTI_fixunsdfdi,
134 LTI_fixunsdfti,
135
136 LTI_fixunsxfsi,
137 LTI_fixunsxfdi,
138 LTI_fixunsxfti,
139
140 LTI_fixunstfsi,
141 LTI_fixunstfdi,
142 LTI_fixunstfti,
143
e78d8e51
ZW
144 LTI_profile_function_entry,
145 LTI_profile_function_exit,
146
68d28100
RH
147 LTI_gcov_flush,
148 LTI_gcov_init,
149
e78d8e51
ZW
150 LTI_MAX
151};
152
153/* SYMBOL_REF rtx's for the library functions that are called
154 implicitly and not via optabs. */
e2500fed 155extern GTY(()) rtx libfunc_table[LTI_MAX];
e78d8e51
ZW
156
157/* Accessor macros for libfunc_table. */
158#define extendsfdf2_libfunc (libfunc_table[LTI_extendsfdf2])
159#define extendsfxf2_libfunc (libfunc_table[LTI_extendsfxf2])
160#define extendsftf2_libfunc (libfunc_table[LTI_extendsftf2])
161#define extenddfxf2_libfunc (libfunc_table[LTI_extenddfxf2])
162#define extenddftf2_libfunc (libfunc_table[LTI_extenddftf2])
163
164#define truncdfsf2_libfunc (libfunc_table[LTI_truncdfsf2])
165#define truncxfsf2_libfunc (libfunc_table[LTI_truncxfsf2])
166#define trunctfsf2_libfunc (libfunc_table[LTI_trunctfsf2])
167#define truncxfdf2_libfunc (libfunc_table[LTI_truncxfdf2])
168#define trunctfdf2_libfunc (libfunc_table[LTI_trunctfdf2])
169
9602f5a0 170#define abort_libfunc (libfunc_table[LTI_abort])
e78d8e51
ZW
171#define memcpy_libfunc (libfunc_table[LTI_memcpy])
172#define memmove_libfunc (libfunc_table[LTI_memmove])
173#define bcopy_libfunc (libfunc_table[LTI_bcopy])
174#define memcmp_libfunc (libfunc_table[LTI_memcmp])
175#define bcmp_libfunc (libfunc_table[LTI_bcmp])
176#define memset_libfunc (libfunc_table[LTI_memset])
177#define bzero_libfunc (libfunc_table[LTI_bzero])
68d28100 178#define setbits_libfunc (libfunc_table[LTI_setbits])
e78d8e51
ZW
179
180#define unwind_resume_libfunc (libfunc_table[LTI_unwind_resume])
181#define eh_personality_libfunc (libfunc_table[LTI_eh_personality])
182#define setjmp_libfunc (libfunc_table[LTI_setjmp])
183#define longjmp_libfunc (libfunc_table[LTI_longjmp])
184#define unwind_sjlj_register_libfunc (libfunc_table[LTI_unwind_sjlj_register])
185#define unwind_sjlj_unregister_libfunc \
186 (libfunc_table[LTI_unwind_sjlj_unregister])
187
188#define eqhf2_libfunc (libfunc_table[LTI_eqhf2])
189#define nehf2_libfunc (libfunc_table[LTI_nehf2])
190#define gthf2_libfunc (libfunc_table[LTI_gthf2])
191#define gehf2_libfunc (libfunc_table[LTI_gehf2])
192#define lthf2_libfunc (libfunc_table[LTI_lthf2])
193#define lehf2_libfunc (libfunc_table[LTI_lehf2])
194#define unordhf2_libfunc (libfunc_table[LTI_unordhf2])
195
196#define eqsf2_libfunc (libfunc_table[LTI_eqsf2])
197#define nesf2_libfunc (libfunc_table[LTI_nesf2])
198#define gtsf2_libfunc (libfunc_table[LTI_gtsf2])
199#define gesf2_libfunc (libfunc_table[LTI_gesf2])
200#define ltsf2_libfunc (libfunc_table[LTI_ltsf2])
201#define lesf2_libfunc (libfunc_table[LTI_lesf2])
202#define unordsf2_libfunc (libfunc_table[LTI_unordsf2])
203
204#define eqdf2_libfunc (libfunc_table[LTI_eqdf2])
205#define nedf2_libfunc (libfunc_table[LTI_nedf2])
206#define gtdf2_libfunc (libfunc_table[LTI_gtdf2])
207#define gedf2_libfunc (libfunc_table[LTI_gedf2])
208#define ltdf2_libfunc (libfunc_table[LTI_ltdf2])
209#define ledf2_libfunc (libfunc_table[LTI_ledf2])
210#define unorddf2_libfunc (libfunc_table[LTI_unorddf2])
211
212#define eqxf2_libfunc (libfunc_table[LTI_eqxf2])
213#define nexf2_libfunc (libfunc_table[LTI_nexf2])
214#define gtxf2_libfunc (libfunc_table[LTI_gtxf2])
215#define gexf2_libfunc (libfunc_table[LTI_gexf2])
216#define ltxf2_libfunc (libfunc_table[LTI_ltxf2])
217#define lexf2_libfunc (libfunc_table[LTI_lexf2])
218#define unordxf2_libfunc (libfunc_table[LTI_unordxf2])
219
220#define eqtf2_libfunc (libfunc_table[LTI_eqtf2])
221#define netf2_libfunc (libfunc_table[LTI_netf2])
222#define gttf2_libfunc (libfunc_table[LTI_gttf2])
223#define getf2_libfunc (libfunc_table[LTI_getf2])
224#define lttf2_libfunc (libfunc_table[LTI_lttf2])
225#define letf2_libfunc (libfunc_table[LTI_letf2])
226#define unordtf2_libfunc (libfunc_table[LTI_unordtf2])
227
228#define floatsisf_libfunc (libfunc_table[LTI_floatsisf])
229#define floatdisf_libfunc (libfunc_table[LTI_floatdisf])
230#define floattisf_libfunc (libfunc_table[LTI_floattisf])
231
232#define floatsidf_libfunc (libfunc_table[LTI_floatsidf])
233#define floatdidf_libfunc (libfunc_table[LTI_floatdidf])
234#define floattidf_libfunc (libfunc_table[LTI_floattidf])
235
236#define floatsixf_libfunc (libfunc_table[LTI_floatsixf])
237#define floatdixf_libfunc (libfunc_table[LTI_floatdixf])
238#define floattixf_libfunc (libfunc_table[LTI_floattixf])
239
240#define floatsitf_libfunc (libfunc_table[LTI_floatsitf])
241#define floatditf_libfunc (libfunc_table[LTI_floatditf])
242#define floattitf_libfunc (libfunc_table[LTI_floattitf])
243
244#define fixsfsi_libfunc (libfunc_table[LTI_fixsfsi])
245#define fixsfdi_libfunc (libfunc_table[LTI_fixsfdi])
246#define fixsfti_libfunc (libfunc_table[LTI_fixsfti])
247
248#define fixdfsi_libfunc (libfunc_table[LTI_fixdfsi])
249#define fixdfdi_libfunc (libfunc_table[LTI_fixdfdi])
250#define fixdfti_libfunc (libfunc_table[LTI_fixdfti])
251
252#define fixxfsi_libfunc (libfunc_table[LTI_fixxfsi])
253#define fixxfdi_libfunc (libfunc_table[LTI_fixxfdi])
254#define fixxfti_libfunc (libfunc_table[LTI_fixxfti])
255
256#define fixtfsi_libfunc (libfunc_table[LTI_fixtfsi])
257#define fixtfdi_libfunc (libfunc_table[LTI_fixtfdi])
258#define fixtfti_libfunc (libfunc_table[LTI_fixtfti])
259
260#define fixunssfsi_libfunc (libfunc_table[LTI_fixunssfsi])
261#define fixunssfdi_libfunc (libfunc_table[LTI_fixunssfdi])
262#define fixunssfti_libfunc (libfunc_table[LTI_fixunssfti])
263
264#define fixunsdfsi_libfunc (libfunc_table[LTI_fixunsdfsi])
265#define fixunsdfdi_libfunc (libfunc_table[LTI_fixunsdfdi])
266#define fixunsdfti_libfunc (libfunc_table[LTI_fixunsdfti])
267
268#define fixunsxfsi_libfunc (libfunc_table[LTI_fixunsxfsi])
269#define fixunsxfdi_libfunc (libfunc_table[LTI_fixunsxfdi])
270#define fixunsxfti_libfunc (libfunc_table[LTI_fixunsxfti])
271
272#define fixunstfsi_libfunc (libfunc_table[LTI_fixunstfsi])
273#define fixunstfdi_libfunc (libfunc_table[LTI_fixunstfdi])
274#define fixunstfti_libfunc (libfunc_table[LTI_fixunstfti])
275
e78d8e51
ZW
276#define profile_function_entry_libfunc (libfunc_table[LTI_profile_function_entry])
277#define profile_function_exit_libfunc (libfunc_table[LTI_profile_function_exit])
278
68d28100
RH
279#define gcov_flush_libfunc (libfunc_table[LTI_gcov_flush])
280#define gcov_init_libfunc (libfunc_table[LTI_gcov_init])
281
e78d8e51 282#endif /* GCC_LIBFUNCS_H */
This page took 0.623034 seconds and 5 git commands to generate.