05-04-22 Thomas Koenig <Thomas.Koenig@online.de>
[official-gcc.git] / gcc / integrate.h
blob74d3f9d03ddb2651675f8ec68797f606521c418f
1 /* Function integration definitions for GCC
2 Copyright (C) 1990, 1995, 1998, 1999, 2000, 2001, 2003, 2004
3 Free Software Foundation, Inc.
5 This file is part of GCC.
7 GCC is free software; you can redistribute it and/or modify it under
8 the terms of the GNU General Public License as published by the Free
9 Software Foundation; either version 2, or (at your option) any later
10 version.
12 GCC is distributed in the hope that it will be useful, but WITHOUT ANY
13 WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15 for more details.
17 You should have received a copy of the GNU General Public License
18 along with GCC; see the file COPYING. If not, write to the Free
19 Software Foundation, 59 Temple Place - Suite 330, Boston, MA
20 02111-1307, USA. */
22 #include "varray.h"
24 /* Return a pseudo that corresponds to the value in the specified hard
25 reg as of the start of the function (for inlined functions, the
26 value at the start of the parent function). */
27 extern rtx get_hard_reg_initial_val (enum machine_mode, int);
28 /* Likewise, but for common cases. */
29 extern rtx has_hard_reg_initial_val (enum machine_mode, int);
30 /* If a pseudo represents an initial hard reg (or expression), return
31 it, else return NULL_RTX. */
32 extern rtx get_hard_reg_initial_reg (struct function *, rtx);
33 /* Called from rest_of_compilation. */
34 extern void emit_initial_value_sets (void);
35 extern void allocate_initial_values (rtx *);
37 /* Copy a declaration when one function is substituted inline into
38 another. */
39 extern tree copy_decl_for_inlining (tree, tree, tree);
41 /* Check whether there's any attribute in a function declaration that
42 makes the function uninlinable. Returns false if it finds any,
43 true otherwise. */
44 extern bool function_attribute_inlinable_p (tree);