xref: /dflybsd-src/contrib/gcc-4.7/gcc/hosthooks-def.h (revision 04febcfb30580676d3e95f58a16c5137ee478b32)
1*e4b17023SJohn Marino /* Default macros to initialize the lang_hooks data structure.
2*e4b17023SJohn Marino    Copyright 2003, 2004, 2007 Free Software Foundation, Inc.
3*e4b17023SJohn Marino 
4*e4b17023SJohn Marino This file is part of GCC.
5*e4b17023SJohn Marino 
6*e4b17023SJohn Marino GCC is free software; you can redistribute it and/or modify
7*e4b17023SJohn Marino it under the terms of the GNU General Public License as published by
8*e4b17023SJohn Marino the Free Software Foundation; either version 3, or (at your option)
9*e4b17023SJohn Marino any later version.
10*e4b17023SJohn Marino 
11*e4b17023SJohn Marino GCC is distributed in the hope that it will be useful,
12*e4b17023SJohn Marino but WITHOUT ANY WARRANTY; without even the implied warranty of
13*e4b17023SJohn Marino MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14*e4b17023SJohn Marino GNU General Public License for more details.
15*e4b17023SJohn Marino 
16*e4b17023SJohn Marino You should have received a copy of the GNU General Public License
17*e4b17023SJohn Marino along with GCC; see the file COPYING3.  If not see
18*e4b17023SJohn Marino <http://www.gnu.org/licenses/>.  */
19*e4b17023SJohn Marino 
20*e4b17023SJohn Marino #ifndef GCC_HOST_HOOKS_DEF_H
21*e4b17023SJohn Marino #define GCC_HOST_HOOKS_DEF_H
22*e4b17023SJohn Marino 
23*e4b17023SJohn Marino #include "hooks.h"
24*e4b17023SJohn Marino 
25*e4b17023SJohn Marino #define HOST_HOOKS_EXTRA_SIGNALS hook_void_void
26*e4b17023SJohn Marino #if HAVE_MMAP_FILE
27*e4b17023SJohn Marino #define HOST_HOOKS_GT_PCH_GET_ADDRESS mmap_gt_pch_get_address
28*e4b17023SJohn Marino #define HOST_HOOKS_GT_PCH_USE_ADDRESS mmap_gt_pch_use_address
29*e4b17023SJohn Marino #else
30*e4b17023SJohn Marino #define HOST_HOOKS_GT_PCH_GET_ADDRESS default_gt_pch_get_address
31*e4b17023SJohn Marino #define HOST_HOOKS_GT_PCH_USE_ADDRESS default_gt_pch_use_address
32*e4b17023SJohn Marino #endif
33*e4b17023SJohn Marino 
34*e4b17023SJohn Marino #define HOST_HOOKS_GT_PCH_ALLOC_GRANULARITY \
35*e4b17023SJohn Marino   default_gt_pch_alloc_granularity
36*e4b17023SJohn Marino 
37*e4b17023SJohn Marino extern void* default_gt_pch_get_address (size_t, int);
38*e4b17023SJohn Marino extern int default_gt_pch_use_address (void *, size_t, int, size_t);
39*e4b17023SJohn Marino extern size_t default_gt_pch_alloc_granularity (void);
40*e4b17023SJohn Marino extern void* mmap_gt_pch_get_address (size_t, int);
41*e4b17023SJohn Marino extern int mmap_gt_pch_use_address (void *, size_t, int, size_t);
42*e4b17023SJohn Marino 
43*e4b17023SJohn Marino /* The structure is defined in hosthooks.h.  */
44*e4b17023SJohn Marino #define HOST_HOOKS_INITIALIZER {		\
45*e4b17023SJohn Marino   HOST_HOOKS_EXTRA_SIGNALS,			\
46*e4b17023SJohn Marino   HOST_HOOKS_GT_PCH_GET_ADDRESS,		\
47*e4b17023SJohn Marino   HOST_HOOKS_GT_PCH_USE_ADDRESS,		\
48*e4b17023SJohn Marino   HOST_HOOKS_GT_PCH_ALLOC_GRANULARITY		\
49*e4b17023SJohn Marino }
50*e4b17023SJohn Marino 
51*e4b17023SJohn Marino #endif /* GCC_HOST_HOOKS_DEF_H */
52