]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/hooks.h
* coretypes.h (struct cl_option_handlers): Declare.
[thirdparty/gcc.git] / gcc / hooks.h
CommitLineData
e27e52e0 1/* General-purpose hooks.
e88d34f6 2 Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010
cfaf579d 3 Free Software Foundation, Inc.
e27e52e0 4
8c4c00c1 5 This program is free software; you can redistribute it and/or modify it
6 under the terms of the GNU General Public License as published by the
7 Free Software Foundation; either version 3, or (at your option) any
8 later version.
e27e52e0 9
8c4c00c1 10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
e27e52e0 14
8c4c00c1 15 You should have received a copy of the GNU General Public License
16 along with this program; see the file COPYING3. If not see
48e1416a 17 <http://www.gnu.org/licenses/>.
e27e52e0 18
8c4c00c1 19 In other words, you are welcome to use, share and improve this program.
20 You are forbidden to forbid anyone else to use, share and improve
21 what you give them. Help stamp out software-hoarding! */
e27e52e0 22
dd436eaf 23#ifndef GCC_HOOKS_H
24#define GCC_HOOKS_H
25
9e7454d0 26#include "machmode.h"
27
4e00ee67 28extern bool hook_bool_void_false (void);
219626ad 29extern bool hook_bool_void_true (void);
4e00ee67 30extern bool hook_bool_bool_false (bool);
cd90919d 31extern bool hook_bool_const_int_const_int_true (const int, const int);
9e7454d0 32extern bool hook_bool_mode_false (enum machine_mode);
ed5527ca 33extern bool hook_bool_mode_true (enum machine_mode);
a9f1838b 34extern bool hook_bool_mode_const_rtx_false (enum machine_mode, const_rtx);
35extern bool hook_bool_mode_const_rtx_true (enum machine_mode, const_rtx);
4e00ee67 36extern bool hook_bool_tree_false (tree);
f8fd23c0 37extern bool hook_bool_const_tree_false (const_tree);
4e00ee67 38extern bool hook_bool_tree_true (tree);
fb80456a 39extern bool hook_bool_const_tree_true (const_tree);
a9f1838b 40extern bool hook_bool_const_tree_hwi_hwi_const_tree_false (const_tree,
41 HOST_WIDE_INT,
42 HOST_WIDE_INT,
43 const_tree);
44extern bool hook_bool_const_tree_hwi_hwi_const_tree_true (const_tree,
45 HOST_WIDE_INT,
46 HOST_WIDE_INT,
47 const_tree);
4e00ee67 48extern bool hook_bool_rtx_false (rtx);
124ac4e4 49extern bool hook_bool_uintp_uintp_false (unsigned int *, unsigned int *);
f529eb25 50extern bool hook_bool_rtx_int_int_intp_bool_false (rtx, int, int, int *, bool);
ff05e09e 51extern bool hook_bool_size_t_constcharptr_int_true (size_t, const char *, int);
1e8e9920 52extern bool hook_bool_tree_tree_false (tree, tree);
afaef242 53extern bool hook_bool_tree_tree_true (tree, tree);
1e8e9920 54extern bool hook_bool_tree_bool_false (tree, bool);
4e00ee67 55
4e00ee67 56extern void hook_void_void (void);
9423c9b7 57extern void hook_void_constcharptr (const char *);
4e00ee67 58extern void hook_void_FILEptr_constcharptr (FILE *, const char *);
59extern void hook_void_tree (tree);
60extern void hook_void_tree_treeptr (tree, tree *);
4e00ee67 61
a9f1838b 62extern int hook_int_const_tree_0 (const_tree);
63extern int hook_int_const_tree_const_tree_1 (const_tree, const_tree);
4e00ee67 64extern int hook_int_rtx_0 (rtx);
f529eb25 65extern int hook_int_rtx_bool_0 (rtx, bool);
4e00ee67 66
2b3c93a3 67extern tree hook_tree_const_tree_null (const_tree);
68
1e8e9920 69extern tree hook_tree_tree_tree_null (tree, tree);
fd6481cf 70extern tree hook_tree_tree_tree_tree_null (tree, tree, tree);
1e8e9920 71extern tree hook_tree_tree_tree_tree_3rd_identity (tree, tree, tree);
97d67146 72extern tree hook_tree_tree_int_treep_bool_null (tree, int, tree *, bool);
1e8e9920 73
e88d34f6 74extern unsigned hook_uint_void_0 (void);
4e00ee67 75
a9f1838b 76extern bool default_can_output_mi_thunk_no_vcall (const_tree, HOST_WIDE_INT,
77 HOST_WIDE_INT, const_tree);
dd436eaf 78
4e00ee67 79extern rtx hook_rtx_rtx_identity (rtx);
80extern rtx hook_rtx_rtx_null (rtx);
81extern rtx hook_rtx_tree_int_null (tree, int);
1e8e9920 82
a9f1838b 83extern const char *hook_constcharptr_const_tree_null (const_tree);
84extern const char *hook_constcharptr_const_rtx_null (const_rtx);
85extern const char *hook_constcharptr_const_tree_const_tree_null (const_tree, const_tree);
86extern const char *hook_constcharptr_int_const_tree_null (int, const_tree);
87extern const char *hook_constcharptr_int_const_tree_const_tree_null (int, const_tree, const_tree);
dd436eaf 88#endif