cgraph.h (cgraph_rtl_info): Move to rtl.h
2015-06-25 Andrew MacLeod <amacleod@redhat.com> * cgraph.h (cgraph_rtl_info): Move to rtl.h (cgraph_node): Maintain pointer to struct cgraph_rtl_info instead of and instance. * rtl.h (struct cgraph_rtl_info): Define when HARD_REG_SET available. * cgraph.c (cgraph_node::rtl_info): Allocate cgraph_rtl_info if one doesn't exist. * calls.c: Include hard-reg-set.h before rtl.h. * ira.c: Likewise. From-SVN: r224946
This commit is contained in:
parent
06fbce663e
commit
88f554b4b9
|
@ -1,3 +1,14 @@
|
|||
2015-06-25 Andrew MacLeod <amacleod@redhat.com>
|
||||
|
||||
* cgraph.h (cgraph_rtl_info): Move to rtl.h
|
||||
(cgraph_node): Maintain pointer to struct cgraph_rtl_info instead of
|
||||
and instance.
|
||||
* rtl.h (struct cgraph_rtl_info): Define when HARD_REG_SET available.
|
||||
* cgraph.c (cgraph_node::rtl_info): Allocate cgraph_rtl_info if one
|
||||
doesn't exist.
|
||||
* calls.c: Include hard-reg-set.h before rtl.h.
|
||||
* ira.c: Likewise.
|
||||
|
||||
2015-06-25 Zhouyi Zhou <yizhouzhou@ict.ac.cn>
|
||||
Vladimir Makarov <vmakarov@redhat.com>
|
||||
|
||||
|
|
|
@ -21,6 +21,7 @@ along with GCC; see the file COPYING3. If not see
|
|||
#include "system.h"
|
||||
#include "coretypes.h"
|
||||
#include "tm.h"
|
||||
#include "hard-reg-set.h"
|
||||
#include "rtl.h"
|
||||
#include "alias.h"
|
||||
#include "symtab.h"
|
||||
|
@ -31,7 +32,6 @@ along with GCC; see the file COPYING3. If not see
|
|||
#include "stringpool.h"
|
||||
#include "attribs.h"
|
||||
#include "predict.h"
|
||||
#include "hard-reg-set.h"
|
||||
#include "function.h"
|
||||
#include "basic-block.h"
|
||||
#include "tree-ssa-alias.h"
|
||||
|
|
|
@ -1892,7 +1892,10 @@ cgraph_node::rtl_info (tree decl)
|
|||
if (node->decl != current_function_decl
|
||||
&& !TREE_ASM_WRITTEN (node->decl))
|
||||
return NULL;
|
||||
return &node->ultimate_alias_target ()->rtl;
|
||||
/* Allocate if it doesnt exist. */
|
||||
if (node->ultimate_alias_target ()->rtl == NULL)
|
||||
node->ultimate_alias_target ()->rtl = ggc_cleared_alloc<cgraph_rtl_info> ();
|
||||
return node->ultimate_alias_target ()->rtl;
|
||||
}
|
||||
|
||||
/* Return a string describing the failure REASON. */
|
||||
|
|
18
gcc/cgraph.h
18
gcc/cgraph.h
|
@ -613,20 +613,6 @@ struct GTY(()) cgraph_global_info {
|
|||
cgraph_node *inlined_to;
|
||||
};
|
||||
|
||||
/* Information about the function that is propagated by the RTL backend.
|
||||
Available only for functions that has been already assembled. */
|
||||
|
||||
struct GTY(()) cgraph_rtl_info {
|
||||
unsigned int preferred_incoming_stack_boundary;
|
||||
|
||||
/* Call unsaved hard registers really used by the corresponding
|
||||
function (including ones used by functions called by the
|
||||
function). */
|
||||
HARD_REG_SET function_used_regs;
|
||||
/* Set if function_used_regs is valid. */
|
||||
unsigned function_used_regs_valid: 1;
|
||||
};
|
||||
|
||||
/* Represent which DECL tree (or reference to such tree)
|
||||
will be replaced by another tree while versioning. */
|
||||
struct GTY(()) ipa_replace_map
|
||||
|
@ -1194,7 +1180,7 @@ public:
|
|||
static cgraph_local_info *local_info (tree decl);
|
||||
|
||||
/* Return local info for the compiled function. */
|
||||
static cgraph_rtl_info *rtl_info (tree);
|
||||
static struct cgraph_rtl_info *rtl_info (tree);
|
||||
|
||||
/* Return the cgraph node that has ASMNAME for its DECL_ASSEMBLER_NAME.
|
||||
Return NULL if there's no such node. */
|
||||
|
@ -1263,7 +1249,7 @@ public:
|
|||
|
||||
cgraph_local_info local;
|
||||
cgraph_global_info global;
|
||||
cgraph_rtl_info rtl;
|
||||
struct cgraph_rtl_info *rtl;
|
||||
cgraph_clone_info clone;
|
||||
cgraph_thunk_info thunk;
|
||||
|
||||
|
|
|
@ -371,13 +371,13 @@ along with GCC; see the file COPYING3. If not see
|
|||
#include "alias.h"
|
||||
#include "symtab.h"
|
||||
#include "tree.h"
|
||||
#include "hard-reg-set.h"
|
||||
#include "rtl.h"
|
||||
#include "tm_p.h"
|
||||
#include "target.h"
|
||||
#include "flags.h"
|
||||
#include "obstack.h"
|
||||
#include "bitmap.h"
|
||||
#include "hard-reg-set.h"
|
||||
#include "predict.h"
|
||||
#include "function.h"
|
||||
#include "dominance.h"
|
||||
|
|
17
gcc/rtl.h
17
gcc/rtl.h
|
@ -3710,4 +3710,21 @@ extern void _fatal_insn (const char *, const_rtx, const char *, int, const char
|
|||
/* reginfo.c */
|
||||
extern tree GTY(()) global_regs_decl[FIRST_PSEUDO_REGISTER];
|
||||
|
||||
#ifdef HARD_CONST
|
||||
/* Information about the function that is propagated by the RTL backend.
|
||||
Available only for functions that has been already assembled. */
|
||||
|
||||
struct GTY(()) cgraph_rtl_info {
|
||||
unsigned int preferred_incoming_stack_boundary;
|
||||
|
||||
/* Call unsaved hard registers really used by the corresponding
|
||||
function (including ones used by functions called by the
|
||||
function). */
|
||||
HARD_REG_SET function_used_regs;
|
||||
/* Set if function_used_regs is valid. */
|
||||
unsigned function_used_regs_valid: 1;
|
||||
};
|
||||
#endif
|
||||
|
||||
|
||||
#endif /* ! GCC_RTL_H */
|
||||
|
|
Loading…
Reference in New Issue