aboutsummaryrefslogtreecommitdiff
path: root/gdb/symtab.h
diff options
context:
space:
mode:
authorJan Kratochvil <jan.kratochvil@redhat.com>2011-06-29 22:19:24 +0000
committerJan Kratochvil <jan.kratochvil@redhat.com>2011-06-29 22:19:24 +0000
commite0d00bc749e6b35f45c3497a55c9d2b0606b33d2 (patch)
tree836d19cf711688fa0240628fb192a86c4b758a31 /gdb/symtab.h
parent4632c0d0fff081cb28947ede3d6804e8a470423c (diff)
downloadgdb-e0d00bc749e6b35f45c3497a55c9d2b0606b33d2.zip
gdb-e0d00bc749e6b35f45c3497a55c9d2b0606b33d2.tar.gz
gdb-e0d00bc749e6b35f45c3497a55c9d2b0606b33d2.tar.bz2
gdb/
Disable epilogue unwinders on recent GCCs. * amd64-tdep.c (amd64_in_function_epilogue_p): New variable symtab, initialize it, return 0 on EPILOGUE_UNWIND_VALID. * dwarf2read.c (process_full_comp_unit): Initialize EPILOGUE_UNWIND_VALID. * i386-tdep.c (i386_in_function_epilogue_p): New variable symtab, initialize it, return 0 on EPILOGUE_UNWIND_VALID. * symtab.h (struct symtab): New field epilogue_unwind_valid.
Diffstat (limited to 'gdb/symtab.h')
-rw-r--r--gdb/symtab.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/gdb/symtab.h b/gdb/symtab.h
index 4f96398..41a0fd6 100644
--- a/gdb/symtab.h
+++ b/gdb/symtab.h
@@ -779,6 +779,11 @@ struct symtab
unsigned int locations_valid : 1;
+ /* DWARF unwinder for this CU is valid even for epilogues (PC at the return
+ instruction). This is supported by GCC since 4.5.0. */
+
+ unsigned int epilogue_unwind_valid : 1;
+
/* The macro table for this symtab. Like the blockvector, this
may be shared between different symtabs --- and normally is for
all the symtabs in a given compilation unit. */