aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2003-10-22 22:20:19 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2003-10-22 20:20:19 +0000
commitae0f347754397f3a7c3f63c6ce305bbd8ba0f057 (patch)
tree8e6f8fdc4504eb41afc181b4d9d8be23f3d7dbcd
parenteab09cdf1a45d70f86d48138d81c8541bae9b2d4 (diff)
downloadgcc-ae0f347754397f3a7c3f63c6ce305bbd8ba0f057.zip
gcc-ae0f347754397f3a7c3f63c6ce305bbd8ba0f057.tar.gz
gcc-ae0f347754397f3a7c3f63c6ce305bbd8ba0f057.tar.bz2
dwarf2out.c (dwarf2out_abstract_function): Use DW_AT to check presence of DW_AT_inline.
* dwarf2out.c (dwarf2out_abstract_function): Use DW_AT to check presence of DW_AT_inline. (gen_subprogram_die): Likewise; do not abort instead of emitting DW_AT_not_inline From-SVN: r72821
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/dwarf2out.c10
2 files changed, 10 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index bd9d632..853980a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2003-10-22 Jan Hubicka <jh@suse.cz>
+ * dwarf2out.c (dwarf2out_abstract_function): Use DW_AT to check presence of DW_AT_inline.
+ (gen_subprogram_die): Likewise; do not abort instead of emitting DW_AT_not_inline
+
+2003-10-22 Jan Hubicka <jh@suse.cz>
+
* cgraph.c (cgraph_function_possibly_inlined_p): Be conservative when
global info is not ready.
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 32b9332..96eb7c4 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -10525,7 +10525,7 @@ dwarf2out_abstract_function (tree decl)
decl = DECL_ORIGIN (decl);
old_die = lookup_decl_die (decl);
- if (old_die && get_AT_unsigned (old_die, DW_AT_inline))
+ if (old_die && get_AT (old_die, DW_AT_inline))
/* We've already generated the abstract instance. */
return;
@@ -10602,7 +10602,7 @@ gen_subprogram_die (tree decl, dw_die_ref context_die)
/* We can have a normal definition following an inline one in the
case of redefinition of GNU C extern inlines.
It seems reasonable to use AT_specification in this case. */
- && !get_AT_unsigned (old_die, DW_AT_inline))
+ && !get_AT (old_die, DW_AT_inline))
{
/* ??? This can happen if there is a bug in the program, for
instance, if it has duplicate function definitions. Ideally,
@@ -10672,7 +10672,7 @@ gen_subprogram_die (tree decl, dw_die_ref context_die)
if (declaration)
{
- if (!old_die || !get_AT_unsigned (old_die, DW_AT_inline))
+ if (!old_die || !get_AT (old_die, DW_AT_inline))
{
add_AT_flag (subr_die, DW_AT_declaration, 1);
@@ -10698,14 +10698,14 @@ gen_subprogram_die (tree decl, dw_die_ref context_die)
if (cgraph_function_possibly_inlined_p (decl))
add_AT_unsigned (subr_die, DW_AT_inline, DW_INL_inlined);
else
- abort ();
+ add_AT_unsigned (subr_die, DW_AT_inline, DW_INL_not_inlined);
}
equate_decl_number_to_die (decl, subr_die);
}
else if (!DECL_EXTERNAL (decl))
{
- if (!old_die || !get_AT_unsigned (old_die, DW_AT_inline))
+ if (!old_die || !get_AT (old_die, DW_AT_inline))
equate_decl_number_to_die (decl, subr_die);
ASM_GENERATE_INTERNAL_LABEL (label_id, FUNC_BEGIN_LABEL,