diff options
author | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-11-07 10:19:26 +0000 |
---|---|---|
committer | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-11-07 10:19:26 +0000 |
commit | 80879cf9009417726906a880af907e2de8683a84 (patch) | |
tree | 5d10fee949bcec7e27a86f73f02f55f09633b3d4 /gcc/symtab.c | |
parent | d42d3fad6998402ea943bc2a3159cad09eb288d5 (diff) | |
download | gcc-80879cf9009417726906a880af907e2de8683a84.tar.gz |
2012-11-07 Basile Starynkevitch <basile@starynkevitch.net>
MELT branch merged with trunk rev 193285 using svnmerge.py
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@193288 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/symtab.c')
-rw-r--r-- | gcc/symtab.c | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/gcc/symtab.c b/gcc/symtab.c index c21edcbb79d..39753e2204d 100644 --- a/gcc/symtab.c +++ b/gcc/symtab.c @@ -104,7 +104,7 @@ eq_assembler_name (const void *p1, const void *p2) static void insert_to_assembler_name_hash (symtab_node node) { - if (symtab_variable_p (node) && DECL_HARD_REGISTER (node->symbol.decl)) + if (is_a <varpool_node> (node) && DECL_HARD_REGISTER (node->symbol.decl)) return; gcc_checking_assert (!node->symbol.previous_sharing_asm_name && !node->symbol.next_sharing_asm_name); @@ -252,8 +252,8 @@ symtab_unregister_node (symtab_node node) if (*slot == node) { symtab_node replacement_node = NULL; - if (symtab_function_p (node)) - replacement_node = (symtab_node)cgraph_find_replacement_node (cgraph (node)); + if (cgraph_node *cnode = dyn_cast <cgraph_node> (node)) + replacement_node = (symtab_node)cgraph_find_replacement_node (cnode); if (!replacement_node) htab_clear_slot (symtab_hash, slot); else @@ -294,10 +294,10 @@ symtab_get_node (const_tree decl) void symtab_remove_node (symtab_node node) { - if (symtab_function_p (node)) - cgraph_remove_node (cgraph (node)); - else if (symtab_variable_p (node)) - varpool_remove_node (varpool (node)); + if (cgraph_node *cnode = dyn_cast <cgraph_node> (node)) + cgraph_remove_node (cnode); + else if (varpool_node *vnode = dyn_cast <varpool_node> (node)) + varpool_remove_node (vnode); } /* Initalize asm name hash unless. */ @@ -538,10 +538,10 @@ dump_symtab_base (FILE *f, symtab_node node) void dump_symtab_node (FILE *f, symtab_node node) { - if (symtab_function_p (node)) - dump_cgraph_node (f, cgraph (node)); - else if (symtab_variable_p (node)) - dump_varpool_node (f, varpool (node)); + if (cgraph_node *cnode = dyn_cast <cgraph_node> (node)) + dump_cgraph_node (f, cnode); + else if (varpool_node *vnode = dyn_cast <varpool_node> (node)) + dump_varpool_node (f, vnode); } /* Dump symbol table. */ @@ -579,7 +579,7 @@ verify_symtab_base (symtab_node node) bool error_found = false; symtab_node hashed_node; - if (symtab_function_p (node)) + if (is_a <cgraph_node> (node)) { if (TREE_CODE (node->symbol.decl) != FUNCTION_DECL) { @@ -587,7 +587,7 @@ verify_symtab_base (symtab_node node) error_found = true; } } - else if (symtab_variable_p (node)) + else if (is_a <varpool_node> (node)) { if (TREE_CODE (node->symbol.decl) != VAR_DECL) { @@ -622,7 +622,8 @@ verify_symtab_base (symtab_node node) hashed_node = hashed_node->symbol.next_sharing_asm_name; } if (!hashed_node - && !(symtab_variable_p (node) || DECL_HARD_REGISTER (node->symbol.decl))) + && !(is_a <varpool_node> (node) + || DECL_HARD_REGISTER (node->symbol.decl))) { error ("node not found in symtab assembler name hash"); error_found = true; @@ -676,8 +677,8 @@ verify_symtab_node (symtab_node node) return; timevar_push (TV_CGRAPH_VERIFY); - if (symtab_function_p (node)) - verify_cgraph_node (cgraph (node)); + if (cgraph_node *cnode = dyn_cast <cgraph_node> (node)) + verify_cgraph_node (cnode); else if (verify_symtab_base (node)) { |