summaryrefslogtreecommitdiff
path: root/gcc/cgraph.h
diff options
context:
space:
mode:
authordodji <dodji@138bc75d-0d04-0410-961f-82ee72b054a4>2008-11-12 21:57:44 +0000
committerdodji <dodji@138bc75d-0d04-0410-961f-82ee72b054a4>2008-11-12 21:57:44 +0000
commitd544ceffc24295ad47cd31bb662767b86a3b7708 (patch)
tree4bc0a17b6a59171e39ad721b6863cf81bef60b30 /gcc/cgraph.h
parent545b3be58794f25f30fe15e60ab56b6c6c50aa7b (diff)
downloadgcc-d544ceffc24295ad47cd31bb662767b86a3b7708.tar.gz
gcc/ChangeLog:
2008-11-12 Dodji Seketeli <dodji@redhat.com> PR debug/27574 * cgraph.h: New abstract_and_needed member to struct cgraph_node. * cgraphunit.c (cgraph_analyze_functions): Flag abstract functions - which clones are reachable - as "abstract and needed". * cgraph.c (cgraph_release_function_body): If a node is "abstract and needed", do not release its DECL_INITIAL() content because that will be needed to emit debug info. gcc/testsuite/ChangeLog: 2008-11-12 Dodji Seketeli <dodji@redhat.com> PR debug/27574 * g++.dg/debug/dwarf2/local-var-in-contructor.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@141807 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cgraph.h')
-rw-r--r--gcc/cgraph.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/cgraph.h b/gcc/cgraph.h
index a6018dc8910..782580466dd 100644
--- a/gcc/cgraph.h
+++ b/gcc/cgraph.h
@@ -166,6 +166,9 @@ struct cgraph_node GTY((chain_next ("%h.next"), chain_prev ("%h.previous")))
/* Set when function must be output - it is externally visible
or its address is taken. */
unsigned needed : 1;
+ /* Set when decl is an abstract function pointed to by the
+ ABSTRACT_DECL_ORIGIN of a reachable function. */
+ unsigned abstract_and_needed : 1;
/* Set when function is reachable by call from other function
that is either reachable or needed. */
unsigned reachable : 1;