forked from qt-creator/qt-creator
Add local gdb patches.
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
|
||||
This shortcuts the canonicalization of symbol names. This is likely to
|
||||
introduce regressions for setting breakpoints by function names (which
|
||||
is rarely used by IDE users) but speeds up startup by around 15% for a
|
||||
typical Qt application. So disabling it seems to be a good compromise.
|
||||
|
||||
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
|
||||
index a05c946..761fa34 100644
|
||||
--- a/gdb/dwarf2read.c
|
||||
+++ b/gdb/dwarf2read.c
|
||||
@@ -9097,7 +9097,7 @@ static char *
|
||||
dwarf2_canonicalize_name (char *name, struct dwarf2_cu *cu,
|
||||
struct obstack *obstack)
|
||||
{
|
||||
- if (name && cu->language == language_cplus)
|
||||
+ if (0 && name && cu->language == language_cplus)
|
||||
{
|
||||
char *canon_name = cp_canonicalize_string (name);
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
|
||||
NOTE: Apply to --target=arm-none-symbianelf builds only.
|
||||
|
||||
This works around the problem of TRK overshooting line-wise stepping by a few
|
||||
instructions. This is not a gdb problem, but a TRK problem, but currently
|
||||
easier to workaround on the gdb side. It's sufficient to apply for the
|
||||
arm-none-symbianelf targeted gdbs only as TRK is the only probe known to have
|
||||
this problem.
|
||||
|
||||
--- a/gdb/infrun.c
|
||||
+++ b/gdb/infrun.c
|
||||
@@ -4754,9 +4754,9 @@ infrun: not switching back to stepped thread, it has vanished\n");
|
||||
return;
|
||||
}
|
||||
|
||||
- if ((stop_pc == stop_pc_sal.pc)
|
||||
+ if (1 /* (stop_pc == stop_pc_sal.pc)
|
||||
&& (ecs->event_thread->current_line != stop_pc_sal.line
|
||||
- || ecs->event_thread->current_symtab != stop_pc_sal.symtab))
|
||||
+ || ecs->event_thread->current_symtab != stop_pc_sal.symtab) */)
|
||||
{
|
||||
/* We are at the start of a different line. So stop. Note that
|
||||
we don't stop if we step into the middle of a different line.
|
||||
Reference in New Issue
Block a user