From 1b28d0b3beda72343ea25f135f17746340cae89c Mon Sep 17 00:00:00 2001 From: Pedro Alves Date: Mon, 14 Feb 2011 11:34:31 +0000 Subject: gdb/testuite/ * gdb.trace/unavailable.cc (a, b, c): New globals. (main): Set and clear them. * gdb.trace/unavailable.exp (gdb_collect_globals_test): Collect `a' and `c', and check that `b' isn't collected, although `a' and `c' are. gdb/ * tracepoint.c (memrange_sortmerge): Don't merge ranges that are almost but not quite adjacent. --- gdb/tracepoint.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'gdb/tracepoint.c') diff --git a/gdb/tracepoint.c b/gdb/tracepoint.c index 498f47c..3eae937 100644 --- a/gdb/tracepoint.c +++ b/gdb/tracepoint.c @@ -841,13 +841,12 @@ memrange_sortmerge (struct collection_list *memranges) { for (a = 0, b = 1; b < memranges->next_memrange; b++) { - if (memranges->list[a].type == memranges->list[b].type && - memranges->list[b].start - memranges->list[a].end <= - MAX_REGISTER_SIZE) + /* If memrange b overlaps or is adjacent to memrange a, + merge them. */ + if (memranges->list[a].type == memranges->list[b].type + && memranges->list[b].start <= memranges->list[a].end) { - /* memrange b starts before memrange a ends; merge them. */ - if (memranges->list[b].end > memranges->list[a].end) - memranges->list[a].end = memranges->list[b].end; + memranges->list[a].end = memranges->list[b].end; continue; /* next b, same a */ } a++; /* next a */ -- cgit v1.1