gccint: Host Common
1
1 19.1 Host Common
1 ================
1
1 Some things are just not portable, even between similar operating
1 systems, and are too difficult for autoconf to detect. They get
1 implemented using hook functions in the file specified by the
1 HOST_HOOK_OBJ variable in 'config.gcc'.
1
1 -- Host Hook: void HOST_HOOKS_EXTRA_SIGNALS (void)
1 This host hook is used to set up handling for extra signals. The
1 most common thing to do in this hook is to detect stack overflow.
1
1 -- Host Hook: void * HOST_HOOKS_GT_PCH_GET_ADDRESS (size_t SIZE, int
1 FD)
1 This host hook returns the address of some space that is likely to
1 be free in some subsequent invocation of the compiler. We intend
1 to load the PCH data at this address such that the data need not be
1 relocated. The area should be able to hold SIZE bytes. If the
1 host uses 'mmap', FD is an open file descriptor that can be used
1 for probing.
1
1 -- Host Hook: int HOST_HOOKS_GT_PCH_USE_ADDRESS (void * ADDRESS, size_t
1 SIZE, int FD, size_t OFFSET)
1 This host hook is called when a PCH file is about to be loaded. We
1 want to load SIZE bytes from FD at OFFSET into memory at ADDRESS.
1 The given address will be the result of a previous invocation of
1 'HOST_HOOKS_GT_PCH_GET_ADDRESS'. Return -1 if we couldn't allocate
1 SIZE bytes at ADDRESS. Return 0 if the memory is allocated but the
1 data is not loaded. Return 1 if the hook has performed everything.
1
1 If the implementation uses reserved address space, free any
1 reserved space beyond SIZE, regardless of the return value. If no
1 PCH will be loaded, this hook may be called with SIZE zero, in
1 which case all reserved address space should be freed.
1
1 Do not try to handle values of ADDRESS that could not have been
1 returned by this executable; just return -1. Such values usually
1 indicate an out-of-date PCH file (built by some other GCC
1 executable), and such a PCH file won't work.
1
1 -- Host Hook: size_t HOST_HOOKS_GT_PCH_ALLOC_GRANULARITY (void);
1 This host hook returns the alignment required for allocating
1 virtual memory. Usually this is the same as getpagesize, but on
1 some hosts the alignment for reserving memory differs from the
1 pagesize for committing memory.
1