* skip __main
@ 2008-01-29 5:35 Pedro Alves
2008-01-29 8:50 ` Pierre Muller
0 siblings, 1 reply; 5+ messages in thread
From: Pedro Alves @ 2008-01-29 5:35 UTC (permalink / raw)
To: Pierre Muller, gdb-patches
[-- Attachment #1: Type: text/plain, Size: 1033 bytes --]
Hi all, Pierre,
Here's the much smaller patch I mentioned at gdb@.
This version is about as small as it can get. First the
prologue is analysed and skipped, then line info is used
to get at the first line of user code in the function. If
the function is called "main" (humm, I shall move that into
the callback, as I believe the place where __main/__gccmain
is emitted is configurable on the gcc side), call a gdbarch
method that skips the __main call. Works OK as long as nothing
is scheduled into before the __main call. That means that it
should work OK at -O0, which is enough for fixing the
runto_main problems in the testsuite. Then again,
debugging code with .stabs debug info at anything but -O0
is not pleasant anyway.
Last time I looked at the results, it uncovered other
more serious problems, so it was a win just for that fact.
I'm starting an overnight testrun on Cygwin, as the
last time I did that was a couple of months back.
Any comments? Suggestions for a better gdbarch
callback name?
--
Pedro Alves
[-- Attachment #2: skip_main.diff --]
[-- Type: text/x-diff, Size: 8790 bytes --]
2007-10-13 Pedro Alves <pedro_alves@portugalmail.pt>
* gdbarch.sh (gdbarch_skip___main_call): New.
* gdbarch.h, gdbarch.c: Regenerate.
* i386-tdep.h (i386_skip___main_call): Declare.
* i386-tdep.c (i386_skip___main_call): New.
* i386-cygwin-tdep.c (i386_cygwin_init_abi): Register
i386_skip___main_call as gdbarch_skip___main_call gdbarch
callback.
* symtab.c (find_function_start_sal): When pc points at the "main"
function, call gdbarch_skip___main_call.
---
gdb/gdbarch.c | 33 +++++++++++++++++++++++++++++++++
gdb/gdbarch.h | 6 ++++++
gdb/gdbarch.sh | 1 +
gdb/i386-cygwin-tdep.c | 2 ++
gdb/i386-tdep.c | 27 +++++++++++++++++++++++++++
gdb/i386-tdep.h | 1 +
gdb/symtab.c | 15 +++++++++++++++
7 files changed, 85 insertions(+)
Index: src/gdb/i386-tdep.c
===================================================================
--- src.orig/gdb/i386-tdep.c 2008-01-29 04:39:24.000000000 +0000
+++ src/gdb/i386-tdep.c 2008-01-29 04:39:40.000000000 +0000
@@ -949,6 +949,33 @@ i386_skip_prologue (struct gdbarch *gdba
return pc;
}
+/* Check that the code pointed to by PC corresponds to a call to
+ __main, skip it if so. Return PC otherwise. */
+
+CORE_ADDR
+i386_skip___main_call (struct gdbarch *gdbarch, CORE_ADDR pc)
+{
+ gdb_byte op;
+
+ read_memory_nobpt (pc, &op, 1);
+ if (op == 0xe8)
+ {
+ gdb_byte buf[4];
+ if (target_read_memory (pc + 1, buf, sizeof buf) == 0)
+ {
+ CORE_ADDR call_dest = pc + 5 + extract_unsigned_integer (buf, 4);
+
+ struct minimal_symbol *s = lookup_minimal_symbol_by_pc (call_dest);
+ if (s != NULL
+ && SYMBOL_LINKAGE_NAME (s) != NULL
+ && strcmp (SYMBOL_LINKAGE_NAME (s), "__main") == 0)
+ pc += 5;
+ }
+ }
+
+ return pc;
+}
+
/* This function is 64-bit safe. */
static CORE_ADDR
Index: src/gdb/gdbarch.c
===================================================================
--- src.orig/gdb/gdbarch.c 2008-01-29 04:39:16.000000000 +0000
+++ src/gdb/gdbarch.c 2008-01-29 04:39:40.000000000 +0000
@@ -184,6 +184,7 @@ struct gdbarch
gdbarch_integer_to_address_ftype *integer_to_address;
gdbarch_return_value_ftype *return_value;
gdbarch_skip_prologue_ftype *skip_prologue;
+ gdbarch_skip___main_call_ftype *skip___main_call;
gdbarch_inner_than_ftype *inner_than;
gdbarch_breakpoint_from_pc_ftype *breakpoint_from_pc;
gdbarch_adjust_breakpoint_address_ftype *adjust_breakpoint_address;
@@ -306,6 +307,7 @@ struct gdbarch startup_gdbarch =
0, /* integer_to_address */
0, /* return_value */
0, /* skip_prologue */
+ 0, /* skip___main_call */
0, /* inner_than */
0, /* breakpoint_from_pc */
0, /* adjust_breakpoint_address */
@@ -542,6 +544,7 @@ verify_gdbarch (struct gdbarch *gdbarch)
/* Skip verify of return_value, has predicate */
if (gdbarch->skip_prologue == 0)
fprintf_unfiltered (log, "\n\tskip_prologue");
+ /* Skip verify of skip___main_call, has predicate */
if (gdbarch->inner_than == 0)
fprintf_unfiltered (log, "\n\tinner_than");
if (gdbarch->breakpoint_from_pc == 0)
@@ -934,6 +937,12 @@ gdbarch_dump (struct gdbarch *gdbarch, s
"gdbarch_dump: single_step_through_delay = <0x%lx>\n",
(long) gdbarch->single_step_through_delay);
fprintf_unfiltered (file,
+ "gdbarch_dump: gdbarch_skip___main_call_p() = %d\n",
+ gdbarch_skip___main_call_p (gdbarch));
+ fprintf_unfiltered (file,
+ "gdbarch_dump: skip___main_call = <0x%lx>\n",
+ (long) gdbarch->skip___main_call);
+ fprintf_unfiltered (file,
"gdbarch_dump: gdbarch_skip_permanent_breakpoint_p() = %d\n",
gdbarch_skip_permanent_breakpoint_p (gdbarch));
fprintf_unfiltered (file,
@@ -2075,6 +2084,30 @@ set_gdbarch_skip_prologue (struct gdbarc
}
int
+gdbarch_skip___main_call_p (struct gdbarch *gdbarch)
+{
+ gdb_assert (gdbarch != NULL);
+ return gdbarch->skip___main_call != NULL;
+}
+
+CORE_ADDR
+gdbarch_skip___main_call (struct gdbarch *gdbarch, CORE_ADDR ip)
+{
+ gdb_assert (gdbarch != NULL);
+ gdb_assert (gdbarch->skip___main_call != NULL);
+ if (gdbarch_debug >= 2)
+ fprintf_unfiltered (gdb_stdlog, "gdbarch_skip___main_call called\n");
+ return gdbarch->skip___main_call (gdbarch, ip);
+}
+
+void
+set_gdbarch_skip___main_call (struct gdbarch *gdbarch,
+ gdbarch_skip___main_call_ftype skip___main_call)
+{
+ gdbarch->skip___main_call = skip___main_call;
+}
+
+int
gdbarch_inner_than (struct gdbarch *gdbarch, CORE_ADDR lhs, CORE_ADDR rhs)
{
gdb_assert (gdbarch != NULL);
Index: src/gdb/gdbarch.h
===================================================================
--- src.orig/gdb/gdbarch.h 2008-01-29 04:39:16.000000000 +0000
+++ src/gdb/gdbarch.h 2008-01-29 04:39:40.000000000 +0000
@@ -374,6 +374,12 @@ typedef CORE_ADDR (gdbarch_skip_prologue
extern CORE_ADDR gdbarch_skip_prologue (struct gdbarch *gdbarch, CORE_ADDR ip);
extern void set_gdbarch_skip_prologue (struct gdbarch *gdbarch, gdbarch_skip_prologue_ftype *skip_prologue);
+extern int gdbarch_skip___main_call_p (struct gdbarch *gdbarch);
+
+typedef CORE_ADDR (gdbarch_skip___main_call_ftype) (struct gdbarch *gdbarch, CORE_ADDR ip);
+extern CORE_ADDR gdbarch_skip___main_call (struct gdbarch *gdbarch, CORE_ADDR ip);
+extern void set_gdbarch_skip___main_call (struct gdbarch *gdbarch, gdbarch_skip___main_call_ftype *skip___main_call);
+
typedef int (gdbarch_inner_than_ftype) (CORE_ADDR lhs, CORE_ADDR rhs);
extern int gdbarch_inner_than (struct gdbarch *gdbarch, CORE_ADDR lhs, CORE_ADDR rhs);
extern void set_gdbarch_inner_than (struct gdbarch *gdbarch, gdbarch_inner_than_ftype *inner_than);
Index: src/gdb/gdbarch.sh
===================================================================
--- src.orig/gdb/gdbarch.sh 2008-01-29 04:39:16.000000000 +0000
+++ src/gdb/gdbarch.sh 2008-01-29 04:39:40.000000000 +0000
@@ -477,6 +477,7 @@ M:CORE_ADDR:integer_to_address:struct ty
M:enum return_value_convention:return_value:struct type *valtype, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf:valtype, regcache, readbuf, writebuf
m:CORE_ADDR:skip_prologue:CORE_ADDR ip:ip:0:0
+M:CORE_ADDR:skip___main_call:CORE_ADDR ip:ip
f:int:inner_than:CORE_ADDR lhs, CORE_ADDR rhs:lhs, rhs:0:0
m:const gdb_byte *:breakpoint_from_pc:CORE_ADDR *pcptr, int *lenptr:pcptr, lenptr::0:
M:CORE_ADDR:adjust_breakpoint_address:CORE_ADDR bpaddr:bpaddr
Index: src/gdb/i386-cygwin-tdep.c
===================================================================
--- src.orig/gdb/i386-cygwin-tdep.c 2008-01-29 04:39:18.000000000 +0000
+++ src/gdb/i386-cygwin-tdep.c 2008-01-29 04:39:40.000000000 +0000
@@ -227,6 +227,8 @@ i386_cygwin_init_abi (struct gdbarch_inf
set_gdbarch_skip_trampoline_code (gdbarch, i386_cygwin_skip_trampoline_code);
+ set_gdbarch_skip___main_call (gdbarch, i386_skip___main_call);
+
tdep->struct_return = reg_struct_return;
tdep->gregset_reg_offset = i386_win32_gregset_reg_offset;
Index: src/gdb/i386-tdep.h
===================================================================
--- src.orig/gdb/i386-tdep.h 2008-01-29 04:39:18.000000000 +0000
+++ src/gdb/i386-tdep.h 2008-01-29 04:39:40.000000000 +0000
@@ -166,6 +166,7 @@ extern struct type *i386_sse_type (struc
/* Functions exported from i386-tdep.c. */
extern CORE_ADDR i386_pe_skip_trampoline_code (CORE_ADDR pc, char *name);
+extern CORE_ADDR i386_skip___main_call (struct gdbarch *gdbarch, CORE_ADDR pc);
/* Return the name of register REGNUM. */
extern char const *i386_register_name (struct gdbarch * gdbarch, int regnum);
Index: src/gdb/symtab.c
===================================================================
--- src.orig/gdb/symtab.c 2008-01-29 04:39:16.000000000 +0000
+++ src/gdb/symtab.c 2008-01-29 04:39:40.000000000 +0000
@@ -2506,6 +2506,21 @@ find_function_start_sal (struct symbol *
/* Recalculate the line number (might not be N+1). */
sal = find_pc_sect_line (pc, SYMBOL_BFD_SECTION (sym), 0);
}
+
+ /* On targets with executable formats that don't have a concept of
+ constructors (ELF with .init has, PE doesn't), gcc emits a call
+ to `__main' in `main' between the prologue and before user
+ code. */
+ if (funfirstline
+ && gdbarch_skip___main_call_p (current_gdbarch)
+ && SYMBOL_LINKAGE_NAME (sym)
+ && strcmp (SYMBOL_LINKAGE_NAME (sym), "main") == 0)
+ {
+ pc = gdbarch_skip___main_call (current_gdbarch, pc);
+ /* Recalculate the line number (might not be N+1). */
+ sal = find_pc_sect_line (pc, SYMBOL_BFD_SECTION (sym), 0);
+ }
+
sal.pc = pc;
return sal;
^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: skip __main
2008-01-29 5:35 skip __main Pedro Alves
@ 2008-01-29 8:50 ` Pierre Muller
2008-01-29 15:48 ` Pedro Alves
0 siblings, 1 reply; 5+ messages in thread
From: Pierre Muller @ 2008-01-29 8:50 UTC (permalink / raw)
To: 'Pedro Alves', 'gdb-patches'
Hi Pedro!
Thanks for resubmitting this.
The problem for me is that I am currently
unable to do a testsuite on cygwin,
the test stays forever on gdb.threads/manythreads.exp
test and the timeout does not seem to work there :(
Concerning your patch:
I would suggest one change:
instead of using hard coded "main" name,
you should use the main_name function from symtab.c source
defined in symtab.h
I am not really sure this is useful,
(the modified main_name for GNU pascal compiler
does not contain a call to __main), but
it seems more logical to me.
Pierre
> -----Original Message-----
> From: gdb-patches-owner@sourceware.org [mailto:gdb-patches-
> owner@sourceware.org] On Behalf Of Pedro Alves
> Sent: Tuesday, January 29, 2008 6:25 AM
> To: Pierre Muller; gdb-patches
> Subject: skip __main
>
> Hi all, Pierre,
>
> Here's the much smaller patch I mentioned at gdb@.
>
> This version is about as small as it can get. First the prologue is
> analysed and skipped, then line info is used to get at the first line
> of user code in the function. If the function is called "main" (humm,
> I shall move that into the callback, as I believe the place where
> __main/__gccmain is emitted is configurable on the gcc side), call a
> gdbarch method that skips the __main call. Works OK as long as nothing
> is scheduled into before the __main call. That means that it should
> work OK at -O0, which is enough for fixing the runto_main problems in
> the testsuite. Then again, debugging code with .stabs debug info at
> anything but -O0 is not pleasant anyway.
>
> Last time I looked at the results, it uncovered other more serious
> problems, so it was a win just for that fact.
>
> I'm starting an overnight testrun on Cygwin, as the last time I did
> that was a couple of months back.
>
> Any comments? Suggestions for a better gdbarch callback name?
>
> --
> Pedro Alves
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: skip __main
2008-01-29 8:50 ` Pierre Muller
@ 2008-01-29 15:48 ` Pedro Alves
2008-01-29 16:20 ` Pierre Muller
0 siblings, 1 reply; 5+ messages in thread
From: Pedro Alves @ 2008-01-29 15:48 UTC (permalink / raw)
To: Pierre Muller; +Cc: 'gdb-patches'
[-- Attachment #1: Type: text/plain, Size: 1072 bytes --]
Pierre Muller wrote:
>
> The problem for me is that I am currently
> unable to do a testsuite on cygwin,
> the test stays forever on gdb.threads/manythreads.exp
> test and the timeout does not seem to work there :(
>
Wild guess: nasty Anti-virus or anti-spyware doing
nasty things?
> Concerning your patch:
> I would suggest one change:
> instead of using hard coded "main" name,
> you should use the main_name function from symtab.c source
> defined in symtab.h
> I am not really sure this is useful,
> (the modified main_name for GNU pascal compiler
> does not contain a call to __main), but
> it seems more logical to me.
>
The pascal runtime would have an implementation of "main"
somewhere, which is where the __main call is inserted, before
reaching any pascal user code.
I just checked that gcc only emits the call on a identifier
called "main", which means that there is no point currently in
moving the "main" detection into the callback.
Here is result diff of the overnight test. I'm running it
again to confirm the results.
--
Pedro Alves
[-- Attachment #2: skip_main_results.diff --]
[-- Type: text/x-diff, Size: 43797 bytes --]
--- 0/gdb.sum 2008-01-29 07:00:42.000000000 +0000
+++ 1/gdb.sum 2008-01-29 07:54:20.000000000 +0000
@@ -1,4 +1,4 @@
-Test Run By Sandra on Tue Jan 29 06:15:43 2008
+Test Run By Sandra on Tue Jan 29 07:14:33 2008
Native configuration is i686-pc-cygwin
=== gdb tests ===
@@ -227,22 +227,22 @@ PASS: gdb.arch/i386-prologue.exp: backtr
PASS: gdb.arch/i386-prologue.exp: saved registers in gdb1338
PASS: gdb.arch/i386-prologue.exp: check jump_at_beginning prologue end
Running src/gdb/testsuite/gdb.arch/i386-signal.exp ...
-gdb compile failed, /cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/cc6pNFyT.o: In function `main':
+gdb compile failed, /cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccDfqlPj.o: In function `main':
src/gdb/testsuite/gdb.arch/i386-signal.c:31: undefined reference to `_setup'
src/gdb/testsuite/gdb.arch/i386-signal.c:32: undefined reference to `func'
collect2: ld returned 1 exit status
UNTESTED: gdb.arch/i386-signal.exp: i386-sigframe.exp
Running src/gdb/testsuite/gdb.arch/i386-size-overlap.exp ...
-gdb compile failed, /cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccve0Q9s.s: Assembler messages:
-/cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccve0Q9s.s:58: Warning: .size pseudo-op used outside of .def/.endef ignored.
-/cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccve0Q9s.s:58: Error: junk at end of line, first unrecognized character is `_'
-/cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccve0Q9s.s:63: Warning: .size pseudo-op used outside of .def/.endef ignored.
-/cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccve0Q9s.s:63: Error: junk at end of line, first unrecognized character is `_'
+gdb compile failed, /cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccUMWlNJ.s: Assembler messages:
+/cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccUMWlNJ.s:58: Warning: .size pseudo-op used outside of .def/.endef ignored.
+/cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccUMWlNJ.s:58: Error: junk at end of line, first unrecognized character is `_'
+/cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccUMWlNJ.s:63: Warning: .size pseudo-op used outside of .def/.endef ignored.
+/cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccUMWlNJ.s:63: Error: junk at end of line, first unrecognized character is `_'
UNTESTED: gdb.arch/i386-size-overlap.exp: i386-size
Running src/gdb/testsuite/gdb.arch/i386-size.exp ...
-gdb compile failed, /cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccbYZuzQ.s: Assembler messages:
-/cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccbYZuzQ.s:56: Warning: .size pseudo-op used outside of .def/.endef ignored.
-/cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccbYZuzQ.s:56: Error: junk at end of line, first unrecognized character is `_'
+gdb compile failed, /cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccImEDMa.s: Assembler messages:
+/cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccImEDMa.s:56: Warning: .size pseudo-op used outside of .def/.endef ignored.
+/cygdrive/c/DOCUME~1/Sandra/LOCALS~1/Temp/ccImEDMa.s:56: Error: junk at end of line, first unrecognized character is `_'
UNTESTED: gdb.arch/i386-size.exp: i386-size
Running src/gdb/testsuite/gdb.arch/i386-sse.exp ...
PASS: gdb.arch/i386-sse.exp: check whether processor supports SSE
@@ -331,26 +331,26 @@ PASS: gdb.base/advance.exp: continue to
PASS: gdb.base/advance.exp: advance function called as param
PASS: gdb.base/advance.exp: advance with no argument
Running src/gdb/testsuite/gdb.base/all-bin.exp ...
-FAIL: gdb.base/all-bin.exp: continuing after dummy()
-FAIL: gdb.base/all-bin.exp: print value of v_int+v_char
-FAIL: gdb.base/all-bin.exp: print value of v_int+v_short
-FAIL: gdb.base/all-bin.exp: print value of v_int+v_signed_char
-FAIL: gdb.base/all-bin.exp: print value of v_int+v_unsigned_char
-FAIL: gdb.base/all-bin.exp: print value of v_int+v_signed_short
-FAIL: gdb.base/all-bin.exp: print value of v_int+v_unsigned_short
-FAIL: gdb.base/all-bin.exp: print value of v_int+v_signed_int
-FAIL: gdb.base/all-bin.exp: print value of v_int+v_unsigned_int
-FAIL: gdb.base/all-bin.exp: print value of v_int+v_long
-FAIL: gdb.base/all-bin.exp: print value of v_int+v_signed_long
-FAIL: gdb.base/all-bin.exp: print value of v_int+v_unsigned_long
-FAIL: gdb.base/all-bin.exp: print value of v_int+v_float
-FAIL: gdb.base/all-bin.exp: print value of v_int+v_double
+PASS: gdb.base/all-bin.exp: continuing after dummy()
+PASS: gdb.base/all-bin.exp: print value of v_int+v_char
+PASS: gdb.base/all-bin.exp: print value of v_int+v_short
+PASS: gdb.base/all-bin.exp: print value of v_int+v_signed_char
+PASS: gdb.base/all-bin.exp: print value of v_int+v_unsigned_char
+PASS: gdb.base/all-bin.exp: print value of v_int+v_signed_short
+PASS: gdb.base/all-bin.exp: print value of v_int+v_unsigned_short
+PASS: gdb.base/all-bin.exp: print value of v_int+v_signed_int
+PASS: gdb.base/all-bin.exp: print value of v_int+v_unsigned_int
+PASS: gdb.base/all-bin.exp: print value of v_int+v_long
+PASS: gdb.base/all-bin.exp: print value of v_int+v_signed_long
+PASS: gdb.base/all-bin.exp: print value of v_int+v_unsigned_long
+PASS: gdb.base/all-bin.exp: print value of v_int+v_float
+PASS: gdb.base/all-bin.exp: print value of v_int+v_double
PASS: gdb.base/all-bin.exp: print value of v_int<=v_char
-FAIL: gdb.base/all-bin.exp: print value of v_int<=v_short
+PASS: gdb.base/all-bin.exp: print value of v_int<=v_short
PASS: gdb.base/all-bin.exp: print value of v_int<=v_signed_char
PASS: gdb.base/all-bin.exp: print value of v_int<=v_unsigned_char
-FAIL: gdb.base/all-bin.exp: print value of v_int<=v_signed_short
-FAIL: gdb.base/all-bin.exp: print value of v_int<=v_unsigned_short
+PASS: gdb.base/all-bin.exp: print value of v_int<=v_signed_short
+PASS: gdb.base/all-bin.exp: print value of v_int<=v_unsigned_short
PASS: gdb.base/all-bin.exp: print value of v_int<=v_signed_int
PASS: gdb.base/all-bin.exp: print value of v_int<=v_unsigned_int
PASS: gdb.base/all-bin.exp: print value of v_int<=v_long
@@ -362,17 +362,17 @@ PASS: gdb.base/all-bin.exp: set v_char=0
PASS: gdb.base/all-bin.exp: set v_double=0
PASS: gdb.base/all-bin.exp: set v_unsigned_long=0
PASS: gdb.base/all-bin.exp: print value of v_int&&v_char
-FAIL: gdb.base/all-bin.exp: print value of v_int&&v_short
-FAIL: gdb.base/all-bin.exp: print value of v_int&&v_signed_char
-FAIL: gdb.base/all-bin.exp: print value of v_int&&v_unsigned_char
+PASS: gdb.base/all-bin.exp: print value of v_int&&v_short
+PASS: gdb.base/all-bin.exp: print value of v_int&&v_signed_char
+PASS: gdb.base/all-bin.exp: print value of v_int&&v_unsigned_char
PASS: gdb.base/all-bin.exp: print value of v_int&&v_signed_short
-FAIL: gdb.base/all-bin.exp: print value of v_int&&v_unsigned_short
-FAIL: gdb.base/all-bin.exp: print value of v_int&&v_signed_int
-FAIL: gdb.base/all-bin.exp: print value of v_int&&v_unsigned_int
-FAIL: gdb.base/all-bin.exp: print value of v_int&&v_long
-FAIL: gdb.base/all-bin.exp: print value of v_int&&v_signed_long
+PASS: gdb.base/all-bin.exp: print value of v_int&&v_unsigned_short
+PASS: gdb.base/all-bin.exp: print value of v_int&&v_signed_int
+PASS: gdb.base/all-bin.exp: print value of v_int&&v_unsigned_int
+PASS: gdb.base/all-bin.exp: print value of v_int&&v_long
+PASS: gdb.base/all-bin.exp: print value of v_int&&v_signed_long
PASS: gdb.base/all-bin.exp: print value of v_int&&v_unsigned_long
-FAIL: gdb.base/all-bin.exp: print value of v_int&&v_float
+PASS: gdb.base/all-bin.exp: print value of v_int&&v_float
PASS: gdb.base/all-bin.exp: print value of v_int&&v_double
Running src/gdb/testsuite/gdb.base/annota1.exp ...
Running src/gdb/testsuite/gdb.base/annota3.exp ...
@@ -444,7 +444,7 @@ PASS: gdb.base/arrayidx.exp: Print array
PASS: gdb.base/arrayidx.exp: Set print array-indexes to on
PASS: gdb.base/arrayidx.exp: Print array with array-indexes on
Running src/gdb/testsuite/gdb.base/assign.exp ...
-FAIL: gdb.base/assign.exp: continuing after dummy()
+PASS: gdb.base/assign.exp: continuing after dummy()
PASS: gdb.base/assign.exp: v_int=57
PASS: gdb.base/assign.exp: set v_int to 6
PASS: gdb.base/assign.exp: v_int+=57
@@ -457,31 +457,31 @@ PASS: gdb.base/assign.exp: v_int/=4
PASS: gdb.base/assign.exp: set v_int to 6
PASS: gdb.base/assign.exp: v_int%=4
PASS: gdb.base/assign.exp: set v_int to 6
-FAIL: gdb.base/assign.exp: v_int+=v_char
+PASS: gdb.base/assign.exp: v_int+=char
PASS: gdb.base/assign.exp: set v_int to 6
-FAIL: gdb.base/assign.exp: v_int+=v_signed_char
+PASS: gdb.base/assign.exp: v_int+=signed_char
PASS: gdb.base/assign.exp: set v_int to 6
-FAIL: gdb.base/assign.exp: v_int+=v_unsigned_char
+PASS: gdb.base/assign.exp: v_int+=unsigned_char
PASS: gdb.base/assign.exp: set v_int to 6
-FAIL: gdb.base/assign.exp: v_int+=v_short
+PASS: gdb.base/assign.exp: v_int+=short
PASS: gdb.base/assign.exp: set v_int to 6
-FAIL: gdb.base/assign.exp: v_int+=v_signed_short
+PASS: gdb.base/assign.exp: v_int+=signed_short
PASS: gdb.base/assign.exp: set v_int to 6
-FAIL: gdb.base/assign.exp: v_int+=v_unsigned_short
+PASS: gdb.base/assign.exp: v_int=+unsigned_short
PASS: gdb.base/assign.exp: set v_int to 6
-FAIL: gdb.base/assign.exp: v_int+=v_signed_int
+PASS: gdb.base/assign.exp: v_int+=signed_int
PASS: gdb.base/assign.exp: set v_int to 6
-FAIL: gdb.base/assign.exp: v_int+=v_unsigned_int
+PASS: gdb.base/assign.exp: v_int+=unsigned_int
PASS: gdb.base/assign.exp: set v_int to 6
-FAIL: gdb.base/assign.exp: v_int+=v_long
+PASS: gdb.base/assign.exp: v_int+=long
PASS: gdb.base/assign.exp: set v_int to 6
-FAIL: gdb.base/assign.exp: v_int+=v_signed_long
+PASS: gdb.base/assign.exp: v_int+=signed_long
PASS: gdb.base/assign.exp: set v_int to 6
-FAIL: gdb.base/assign.exp: v_int+=v_unsigned_long
+PASS: gdb.base/assign.exp: v_int+=unsigned_long
PASS: gdb.base/assign.exp: set v_int to 6
-FAIL: gdb.base/assign.exp: v_int+=v_float
+PASS: gdb.base/assign.exp: v_int+=v_float
PASS: gdb.base/assign.exp: set v_int to 6
-FAIL: gdb.base/assign.exp: v_int+=v_double
+PASS: gdb.base/assign.exp: v_int+=double
Running src/gdb/testsuite/gdb.base/async.exp ...
Running src/gdb/testsuite/gdb.base/attach.exp ...
Running src/gdb/testsuite/gdb.base/auxv.exp ...
@@ -623,8 +623,8 @@ PASS: gdb.base/break.exp: breakpoint dup
PASS: gdb.base/break.exp: breakpoint line number in file
PASS: gdb.base/break.exp: breakpoint at start of multi line if conditional
PASS: gdb.base/break.exp: breakpoint at start of multi line while conditional
-FAIL: gdb.base/break.exp: breakpoint info
-FAIL: gdb.base/break.exp: run until function breakpoint
+PASS: gdb.base/break.exp: breakpoint info
+PASS: gdb.base/break.exp: run until function breakpoint
PASS: gdb.base/break.exp: run until breakpoint set at a line number
PASS: gdb.base/break.exp: run until file:function(6) breakpoint
PASS: gdb.base/break.exp: run until file:function(5) breakpoint
@@ -644,7 +644,7 @@ PASS: gdb.base/break.exp: Temporary brea
PASS: gdb.base/break.exp: Temporary breakpoint line number #2
PASS: gdb.base/break.exp: Temporary breakpoint line number in file #1
PASS: gdb.base/break.exp: Temporary breakpoint line number in file #2
-FAIL: gdb.base/break.exp: Temporary breakpoint info
+PASS: gdb.base/break.exp: Temporary breakpoint info
PASS: gdb.base/break.exp: catch requires an event name
PASS: gdb.base/break.exp: set catch fork, never expected to trigger
PASS: gdb.base/break.exp: set catch vfork, never expected to trigger
@@ -882,17 +882,17 @@ PASS: gdb.base/call-sc.exp: finish foo;
PASS: gdb.base/call-sc.exp: value foo finished; return call-sc-te
PASS: gdb.base/call-sc.exp: return and finish use same convention; return call-sc-te
Running src/gdb/testsuite/gdb.base/call-strs.exp ...
-FAIL: gdb.base/call-strs.exp: step after assignment to s
-FAIL: gdb.base/call-strs.exp: next over strcpy
-FAIL: gdb.base/call-strs.exp: print buf
-FAIL: gdb.base/call-strs.exp: print s
+PASS: gdb.base/call-strs.exp: step after assignment to s
+PASS: gdb.base/call-strs.exp: next over strcpy
+PASS: gdb.base/call-strs.exp: print buf
+PASS: gdb.base/call-strs.exp: print s
Running src/gdb/testsuite/gdb.base/callfuncs.exp ...
PASS: gdb.base/callfuncs.exp: set print sevenbit-strings
PASS: gdb.base/callfuncs.exp: set print address off
PASS: gdb.base/callfuncs.exp: set width 0
PASS: gdb.base/callfuncs.exp: set language to "c"
-FAIL: gdb.base/callfuncs.exp: next to t_double_values
-FAIL: gdb.base/callfuncs.exp: next to t_structs_c
+PASS: gdb.base/callfuncs.exp: next to t_double_values
+PASS: gdb.base/callfuncs.exp: next to t_structs_c
PASS: gdb.base/callfuncs.exp: retrieve original register contents
PASS: gdb.base/callfuncs.exp: p t_char_values(0,0)
PASS: gdb.base/callfuncs.exp: p t_char_values('a','b')
@@ -1430,7 +1430,7 @@ PASS: gdb.base/condbreak.exp: delete 3
PASS: gdb.base/condbreak.exp: break marker1 if (1==1)
PASS: gdb.base/condbreak.exp: break break.c:93 if (1==1)
PASS: gdb.base/condbreak.exp: break marker2 if (a==43)
-FAIL: gdb.base/condbreak.exp: breakpoint info
+PASS: gdb.base/condbreak.exp: breakpoint info
PASS: gdb.base/condbreak.exp: rerun to main
PASS: gdb.base/condbreak.exp: run until breakpoint set at a line number
PASS: gdb.base/condbreak.exp: run until breakpoint at marker1
@@ -1545,13 +1545,13 @@ Running src/gdb/testsuite/gdb.base/coref
WARNING: can't generate a core file - core tests suppressed - check ulimit -c
Running src/gdb/testsuite/gdb.base/cursal.exp ...
PASS: gdb.base/cursal.exp: set listsize 1
-FAIL: gdb.base/cursal.exp: list before run
-FAIL: gdb.base/cursal.exp: list in main
+PASS: gdb.base/cursal.exp: list before run
+PASS: gdb.base/cursal.exp: list in main
PASS: gdb.base/cursal.exp: list in func2
PASS: gdb.base/cursal.exp: backtrace
PASS: gdb.base/cursal.exp: list after backtrace
PASS: gdb.base/cursal.exp: set listsize 3
-FAIL: gdb.base/cursal.exp: list size 3
+PASS: gdb.base/cursal.exp: list size 3
Running src/gdb/testsuite/gdb.base/cvexpr.exp ...
PASS: gdb.base/cvexpr.exp: (const char)
PASS: gdb.base/cvexpr.exp: (const signed char)
@@ -1666,8 +1666,8 @@ PASS: gdb.base/cvexpr.exp: (const union
PASS: gdb.base/cvexpr.exp: (struct t_struct const * const)
PASS: gdb.base/cvexpr.exp: (union t_union const * const)
Running src/gdb/testsuite/gdb.base/dbx.exp ...
-FAIL: gdb.base/dbx.exp: stop in main
-FAIL: gdb.base/dbx.exp: status
+PASS: gdb.base/dbx.exp: stop in main
+PASS: gdb.base/dbx.exp: status
PASS: gdb.base/dbx.exp: stop at average.c:43
PASS: gdb.base/dbx.exp: stop in average.c:43
PASS: gdb.base/dbx.exp: stop at main
@@ -1942,7 +1942,7 @@ PASS: gdb.base/default.exp: where
PASS: gdb.base/default.exp: x
Running src/gdb/testsuite/gdb.base/define.exp ...
PASS: gdb.base/define.exp: define user command: nextwhere
-FAIL: gdb.base/define.exp: use user command: nextwhere
+PASS: gdb.base/define.exp: use user command: nextwhere
PASS: gdb.base/define.exp: define user command: nextwh
PASS: gdb.base/define.exp: redefine user command aborted: nextwhere
PASS: gdb.base/define.exp: redefine user command: nextwhere
@@ -1956,7 +1956,7 @@ PASS: gdb.base/define.exp: define user c
PASS: gdb.base/define.exp: test whilenospace is parsed correctly
PASS: gdb.base/define.exp: define user command: user-bt
PASS: gdb.base/define.exp: define hook-stop command
-FAIL: gdb.base/define.exp: use hook-stop command
+PASS: gdb.base/define.exp: use hook-stop command
PASS: gdb.base/define.exp: define hook undefined command aborted: bar
PASS: gdb.base/define.exp: define hook undefined command: bar
PASS: gdb.base/define.exp: set gdb_prompt
@@ -2945,8 +2945,8 @@ PASS: gdb.base/gdb1090.exp: print s24
Running src/gdb/testsuite/gdb.base/gdb1250.exp ...
PASS: gdb.base/gdb1250.exp: backtrace from abort
Running src/gdb/testsuite/gdb.base/gdb1555.exp ...
-FAIL: gdb.base/gdb1555.exp: Step into shared lib function
-FAIL: gdb.base/gdb1555.exp: Next while in a shared lib function
+PASS: gdb.base/gdb1555.exp: Step into shared lib function
+PASS: gdb.base/gdb1555.exp: Next while in a shared lib function
Running src/gdb/testsuite/gdb.base/gdb1821.exp ...
PASS: gdb.base/gdb1821.exp: print /x bar
Running src/gdb/testsuite/gdb.base/gdbvars.exp ...
@@ -3646,7 +3646,7 @@ PASS: gdb.base/maint.exp: maint info sec
PASS: gdb.base/maint.exp: maint info sections .text
PASS: gdb.base/maint.exp: maint info sections CODE
XFAIL: gdb.base/maint.exp: maint info sections DATA
-FAIL: gdb.base/maint.exp: maint info breakpoints
+PASS: gdb.base/maint.exp: maint info breakpoints
PASS: gdb.base/maint.exp: maint print w/o args
PASS: gdb.base/maint.exp: maint info w/o args
PASS: gdb.base/maint.exp: maint w/o args
@@ -3764,21 +3764,21 @@ PASS: gdb.base/pc-fp.exp: display/w $fp
Running src/gdb/testsuite/gdb.base/pending.exp ...
PASS: gdb.base/pending.exp: set pending breakpoint
PASS: gdb.base/pending.exp: single pending breakpoint info
-FAIL: gdb.base/pending.exp: breakpoint function
-FAIL: gdb.base/pending.exp: pending plus real breakpoint info
+PASS: gdb.base/pending.exp: breakpoint function
+PASS: gdb.base/pending.exp: pending plus real breakpoint info
PASS: gdb.base/pending.exp: Don't set pending breakpoint
PASS: gdb.base/pending.exp: condition 1 k == 1
-FAIL: gdb.base/pending.exp: pending plus condition
+PASS: gdb.base/pending.exp: pending plus condition
PASS: gdb.base/pending.exp: disable 1
-FAIL: gdb.base/pending.exp: pending disabled
+PASS: gdb.base/pending.exp: pending disabled
PASS: gdb.base/pending.exp: Set commands for pending breakpoint
-FAIL: gdb.base/pending.exp: pending disabled plus commands
+PASS: gdb.base/pending.exp: pending disabled plus commands
PASS: gdb.base/pending.exp: Set pending breakpoint 2
-FAIL: gdb.base/pending.exp: multiple pending breakpoints
+PASS: gdb.base/pending.exp: multiple pending breakpoints
PASS: gdb.base/pending.exp: Set pending breakpoint 3
PASS: gdb.base/pending.exp: set ignore count on pending breakpoint 3
-FAIL: gdb.base/pending.exp: multiple pending breakpoints 2
-FAIL: gdb.base/pending.exp: running to main
+PASS: gdb.base/pending.exp: multiple pending breakpoints 2
+PASS: gdb.base/pending.exp: running to main
PASS: gdb.base/pending.exp: re-enabling pending breakpoint that can resolve instantly
PASS: gdb.base/pending.exp: continue to resolved breakpoint 2
PASS: gdb.base/pending.exp: continue to resolved breakpoint 1
@@ -3787,13 +3787,13 @@ PASS: gdb.base/pending.exp: Disable othe
PASS: gdb.base/pending.exp: continue to resolved breakpoint 3
PASS: gdb.base/pending.exp: set imaginary pending breakpoint
PASS: gdb.base/pending.exp: rerun to main
-FAIL: gdb.base/pending.exp: verify pending breakpoint after restart
+PASS: gdb.base/pending.exp: verify pending breakpoint after restart
Running src/gdb/testsuite/gdb.base/pointers.exp ...
-FAIL: gdb.base/pointers.exp: continuing after dummy()
+PASS: gdb.base/pointers.exp: continuing after dummy()
PASS: gdb.base/pointers.exp: set pointer to beginning of array
PASS: gdb.base/pointers.exp: set pointer to end of array
-FAIL: gdb.base/pointers.exp: print object pointed to
-FAIL: gdb.base/pointers.exp: print object pointed to
+PASS: gdb.base/pointers.exp: print object pointed to
+PASS: gdb.base/pointers.exp: print object pointed to
PASS: gdb.base/pointers.exp: pointer1==pointer2
PASS: gdb.base/pointers.exp: pointer1!=pointer2
PASS: gdb.base/pointers.exp: pointer1<=pointer2
@@ -3801,14 +3801,14 @@ PASS: gdb.base/pointers.exp: pointer1>=p
PASS: gdb.base/pointers.exp: pointer1<pointer2
PASS: gdb.base/pointers.exp: pointer1>pointer2
PASS: gdb.base/pointers.exp: set y = *v_int_pointer++
-FAIL: gdb.base/pointers.exp: pointer assignment and increment
+PASS: gdb.base/pointers.exp: pointer assignment and increment
PASS: gdb.base/pointers.exp: set y = *--v_int_pointer2
-FAIL: gdb.base/pointers.exp: pointer decrement and assignment
+PASS: gdb.base/pointers.exp: pointer decrement and assignment
PASS: gdb.base/pointers.exp: set y =v_int_pointer-v_int_pointer2
PASS: gdb.base/pointers.exp: pointer1-pointer2
PASS: gdb.base/pointers.exp: set v_int_pointer=v_int_array
-FAIL: gdb.base/pointers.exp: print array element through pointer
-FAIL: gdb.base/pointers.exp: print array element through pointer
+PASS: gdb.base/pointers.exp: print array element through pointer
+PASS: gdb.base/pointers.exp: print array element through pointer
PASS: gdb.base/pointers.exp: print array element through pointer
PASS: gdb.base/pointers.exp: print array element through pointer
PASS: gdb.base/pointers.exp: print array element through pointer
@@ -3817,7 +3817,7 @@ PASS: gdb.base/pointers.exp: print array
PASS: gdb.base/pointers.exp: print array element through pointer
PASS: gdb.base/pointers.exp: print array element through pointer
PASS: gdb.base/pointers.exp: print array element w/ pointer arithmetic
-FAIL: gdb.base/pointers.exp: print through ptr to ptr
+PASS: gdb.base/pointers.exp: print through ptr to ptr
PASS: gdb.base/pointers.exp: continue to marker1
PASS: gdb.base/pointers.exp: up from marker1
PASS: gdb.base/pointers.exp: print value of *pUC
@@ -5132,15 +5132,15 @@ Running src/gdb/testsuite/gdb.base/scope
PASS: gdb.base/scope.exp: print 'scope0.c'::filelocal_ro
UNSUPPORTED: gdb.base/scope.exp: print 'scope0.c'::filelocal_bss before run
PASS: gdb.base/scope.exp: print 'scope0.c'::filelocal before run
-FAIL: gdb.base/scope.exp: next over init0() in main
+PASS: gdb.base/scope.exp: next over init0() in main
PASS: gdb.base/scope.exp: print filelocal
PASS: gdb.base/scope.exp: print 'scope0.c'::filelocal at main
-FAIL: gdb.base/scope.exp: print filelocal_bss
-FAIL: gdb.base/scope.exp: print 'scope0.c'::filelocal_bss in test_at_main
+PASS: gdb.base/scope.exp: print filelocal_bss
+PASS: gdb.base/scope.exp: print 'scope0.c'::filelocal_bss in test_at_main
PASS: gdb.base/scope.exp: print filelocal_ro in test_at_main
PASS: gdb.base/scope.exp: print 'scope0.c'::filelocal_ro
PASS: gdb.base/scope.exp: print 'scope1.c'::filelocal
-FAIL: gdb.base/scope.exp: print 'scope1.c'::filelocal_bss
+PASS: gdb.base/scope.exp: print 'scope1.c'::filelocal_bss
PASS: gdb.base/scope.exp: print 'scope1.c'::filelocal_ro
PASS: gdb.base/scope.exp: print foo::funclocal
PASS: gdb.base/scope.exp: print 'scope1.c'::foo::funclocal
@@ -5226,8 +5226,8 @@ PASS: gdb.base/sepdebug.exp: breakpoint
PASS: gdb.base/sepdebug.exp: breakpoint line number in file
PASS: gdb.base/sepdebug.exp: breakpoint at start of multi line if conditional
PASS: gdb.base/sepdebug.exp: breakpoint at start of multi line while conditional
-FAIL: gdb.base/sepdebug.exp: breakpoint info
-FAIL: gdb.base/sepdebug.exp: run until function breakpoint
+PASS: gdb.base/sepdebug.exp: breakpoint info
+PASS: gdb.base/sepdebug.exp: run until function breakpoint
PASS: gdb.base/sepdebug.exp: run until breakpoint set at a line number
PASS: gdb.base/sepdebug.exp: run until file:function(6) breakpoint
PASS: gdb.base/sepdebug.exp: run until file:function(5) breakpoint
@@ -5245,7 +5245,7 @@ PASS: gdb.base/sepdebug.exp: Temporary b
PASS: gdb.base/sepdebug.exp: Temporary breakpoint line number #2
PASS: gdb.base/sepdebug.exp: Temporary breakpoint line number in file #1
PASS: gdb.base/sepdebug.exp: Temporary breakpoint line number in file #2
-FAIL: gdb.base/sepdebug.exp: Temporary breakpoint info
+PASS: gdb.base/sepdebug.exp: Temporary breakpoint info
PASS: gdb.base/sepdebug.exp: catch requires an event name
PASS: gdb.base/sepdebug.exp: set catch fork, never expected to trigger
PASS: gdb.base/sepdebug.exp: set catch vfork, never expected to trigger
@@ -5291,7 +5291,7 @@ PASS: gdb.base/sepdebug.exp: continue un
PASS: gdb.base/sepdebug.exp: debuglink: set separate debug location
PASS: gdb.base/sepdebug.exp: debuglink: breakpoint function, optimized file
PASS: gdb.base/sepdebug.exp: debuglink: breakpoint small function, optimized file
-PASS: gdb.base/sepdebug.exp: debuglink: run until function breakpoint, optimized file (code motion)
+PASS: gdb.base/sepdebug.exp: debuglink: run until function breakpoint, optimized file
PASS: gdb.base/sepdebug.exp: debuglink: run until breakpoint set at small function, optimized file
UNSUPPORTED: gdb.base/sepdebug.exp: build-id is not supported by the compiler
Running src/gdb/testsuite/gdb.base/sepsymtab.exp ...
@@ -5502,9 +5502,9 @@ PASS: gdb.base/setvar.exp: print uef.fie
PASS: gdb.base/setvar.exp: print sef.field=7
PASS: gdb.base/setvar.exp: print uef.field=6
Running src/gdb/testsuite/gdb.base/shlib-call.exp ...
-FAIL: gdb.base/shlib-call.exp: next to shr1
-FAIL: gdb.base/shlib-call.exp: print g
-FAIL: gdb.base/shlib-call.exp: print g
+PASS: gdb.base/shlib-call.exp: next to shr1
+PASS: gdb.base/shlib-call.exp: print g
+PASS: gdb.base/shlib-call.exp: print g
PASS: gdb.base/shlib-call.exp: breakpoint function shr2
PASS: gdb.base/shlib-call.exp: run until breakpoint set at a function
PASS: gdb.base/shlib-call.exp: print mainshr1(1) from shlib func
@@ -5547,10 +5547,10 @@ Running src/gdb/testsuite/gdb.base/sigre
Running src/gdb/testsuite/gdb.base/sigstep.exp ...
Running src/gdb/testsuite/gdb.base/sizeof.exp ...
Running src/gdb/testsuite/gdb.base/so-impl-ld.exp ...
-FAIL: gdb.base/so-impl-ld.exp: step over solib call
-FAIL: gdb.base/so-impl-ld.exp: step into solib call
+PASS: gdb.base/so-impl-ld.exp: step over solib call
+PASS: gdb.base/so-impl-ld.exp: step into solib call
PASS: gdb.base/so-impl-ld.exp: step in solib call
-FAIL: gdb.base/so-impl-ld.exp: step out of solib call
+PASS: gdb.base/so-impl-ld.exp: step out of solib call
Running src/gdb/testsuite/gdb.base/so-indr-cl.exp ...
Running src/gdb/testsuite/gdb.base/solib-disc.exp ...
Running src/gdb/testsuite/gdb.base/solib-symbol.exp ...
@@ -5589,19 +5589,19 @@ PASS: gdb.base/step-line.exp: next to du
PASS: gdb.base/step-line.exp: next to dummy 10
PASS: gdb.base/step-line.exp: next over dummy 10
Running src/gdb/testsuite/gdb.base/step-test.exp ...
-FAIL: gdb.base/step-test.exp: next 1
-FAIL: gdb.base/step-test.exp: step 1
-FAIL: gdb.base/step-test.exp: next 2
-FAIL: gdb.base/step-test.exp: step 3
-FAIL: gdb.base/step-test.exp: next 3
-FAIL: gdb.base/step-test.exp: next over
+PASS: gdb.base/step-test.exp: next 1
+PASS: gdb.base/step-test.exp: step 1
+PASS: gdb.base/step-test.exp: next 2
+PASS: gdb.base/step-test.exp: step 3
+PASS: gdb.base/step-test.exp: next 3
+PASS: gdb.base/step-test.exp: next over
PASS: gdb.base/step-test.exp: step into
-FAIL: gdb.base/step-test.exp: step out
-FAIL: gdb.base/step-test.exp: stepi to next line
-FAIL: gdb.base/step-test.exp: stepi into function
+PASS: gdb.base/step-test.exp: step out
+PASS: gdb.base/step-test.exp: stepi to next line
+PASS: gdb.base/step-test.exp: stepi into function
PASS: gdb.base/step-test.exp: stepi into function's first source line
-FAIL: gdb.base/step-test.exp: stepi: finish call
-FAIL: gdb.base/step-test.exp: nexti over function
+PASS: gdb.base/step-test.exp: stepi: finish call
+PASS: gdb.base/step-test.exp: nexti over function
PASS: gdb.base/step-test.exp: set breakpoint at call to large_struct_by_value
PASS: gdb.base/step-test.exp: run to pass large struct
PASS: gdb.base/step-test.exp: large struct by value
@@ -6467,7 +6467,7 @@ PASS: gdb.base/structs.exp: value foo<n>
PASS: gdb.base/structs.exp: return value known implies finish value known; return 2 structs-tf-td
Running src/gdb/testsuite/gdb.base/structs2.exp ...
PASS: gdb.base/structs2.exp: set width 0
-FAIL: gdb.base/structs2.exp: structs2 sanity check (PRMS 13536)
+PASS: gdb.base/structs2.exp: structs2 sanity check (PRMS 13536)
PASS: gdb.base/structs2.exp: structs2 breakpoint set (PRMS 13536)
PASS: gdb.base/structs2.exp: structs2 continue1 (PRMS 13536)
PASS: gdb.base/structs2.exp: structs2 continue2 (PRMS 13536)
@@ -6514,7 +6514,7 @@ FAIL: gdb.base/trace-commands.exp: neste
FAIL: gdb.base/trace-commands.exp: depth resets on error part 1 (pattern 1)
FAIL: gdb.base/trace-commands.exp: depth resets on error part 2
Running src/gdb/testsuite/gdb.base/twice.exp ...
-FAIL: gdb.base/twice.exp: step
+PASS: gdb.base/twice.exp: step
Running src/gdb/testsuite/gdb.base/type-opaque.exp ...
FAIL: gdb.base/type-opaque.exp: opaque struct type resolving
PASS: gdb.base/type-opaque.exp: empty struct type resolving
@@ -6774,28 +6774,28 @@ Running src/gdb/testsuite/gdb.cp/ambiguo
Running src/gdb/testsuite/gdb.cp/annota2.exp ...
Running src/gdb/testsuite/gdb.cp/annota3.exp ...
Running src/gdb/testsuite/gdb.cp/anon-union.exp ...
-FAIL: gdb.cp/anon-union.exp: next 1
-FAIL: gdb.cp/anon-union.exp: print foo 1
-FAIL: gdb.cp/anon-union.exp: next 1
-FAIL: gdb.cp/anon-union.exp: print foo 2
+PASS: gdb.cp/anon-union.exp: next 1
+PASS: gdb.cp/anon-union.exp: print foo 1
+PASS: gdb.cp/anon-union.exp: next 1
+PASS: gdb.cp/anon-union.exp: print foo 2
PASS: gdb.cp/anon-union.exp: set var foo.cloth
PASS: gdb.cp/anon-union.exp: print foo 3
-FAIL: gdb.cp/anon-union.exp: next 2
-FAIL: gdb.cp/anon-union.exp: print foo 4
+PASS: gdb.cp/anon-union.exp: next 2
+PASS: gdb.cp/anon-union.exp: print foo 4
PASS: gdb.cp/anon-union.exp: set var foo.pebble
-FAIL: gdb.cp/anon-union.exp: print foo 5
+PASS: gdb.cp/anon-union.exp: print foo 5
PASS: gdb.cp/anon-union.exp: set var foo.qux
-FAIL: gdb.cp/anon-union.exp: print foo 6
+PASS: gdb.cp/anon-union.exp: print foo 6
PASS: gdb.cp/anon-union.exp: set var foo.mux
-FAIL: gdb.cp/anon-union.exp: print foo 7
+PASS: gdb.cp/anon-union.exp: print foo 7
PASS: gdb.cp/anon-union.exp: set var foo.x.rock
-FAIL: gdb.cp/anon-union.exp: print foo 8
+PASS: gdb.cp/anon-union.exp: print foo 8
PASS: gdb.cp/anon-union.exp: set var foo.x.rock2
-FAIL: gdb.cp/anon-union.exp: print foo 9
-FAIL: gdb.cp/anon-union.exp: next 3
+PASS: gdb.cp/anon-union.exp: print foo 9
+PASS: gdb.cp/anon-union.exp: next 3
FAIL: gdb.cp/anon-union.exp: print w 1
FAIL: gdb.cp/anon-union.exp: print z 1
-FAIL: gdb.cp/anon-union.exp: next 4
+PASS: gdb.cp/anon-union.exp: next 4
FAIL: gdb.cp/anon-union.exp: print w 2
FAIL: gdb.cp/anon-union.exp: print z 2
PASS: gdb.cp/anon-union.exp: set var z
@@ -8179,10 +8179,10 @@ PASS: gdb.cp/ovldbreak.exp: bp menu for
PASS: gdb.cp/ovldbreak.exp: set bp 12 on foo::overload1arg 2 line 121
PASS: gdb.cp/ovldbreak.exp: bp menu for foo::overload1arg choice 13
PASS: gdb.cp/ovldbreak.exp: set bp 13 on foo::overload1arg 13 line 110
-FAIL: gdb.cp/ovldbreak.exp: breakpoint info (after setting one-by-one)
+PASS: gdb.cp/ovldbreak.exp: breakpoint info (after setting one-by-one)
PASS: gdb.cp/ovldbreak.exp: bp menu for foo::overload1arg choice cancel
PASS: gdb.cp/ovldbreak.exp: set bp on overload1arg canceled
-FAIL: gdb.cp/ovldbreak.exp: breakpoint info (after cancel)
+PASS: gdb.cp/ovldbreak.exp: breakpoint info (after cancel)
PASS: gdb.cp/ovldbreak.exp: delete all breakpoints
PASS: gdb.cp/ovldbreak.exp: breakpoint info (after delete)
PASS: gdb.cp/ovldbreak.exp: bp menu for foo::overload1arg choice all
@@ -8202,16 +8202,16 @@ PASS: gdb.cp/ovldbreak.exp: continue to
PASS: gdb.cp/ovldbreak.exp: continue to bp overloaded : double
PASS: gdb.cp/ovldbreak.exp: continue until exit at finish program
Running src/gdb/testsuite/gdb.cp/pass-by-ref.exp ...
-FAIL: gdb.cp/pass-by-ref.exp: call function in obj
-FAIL: gdb.cp/pass-by-ref.exp: call function in derived
-FAIL: gdb.cp/pass-by-ref.exp: call function in container
+PASS: gdb.cp/pass-by-ref.exp: call function in obj
+PASS: gdb.cp/pass-by-ref.exp: call function in derived
+PASS: gdb.cp/pass-by-ref.exp: call function in container
Running src/gdb/testsuite/gdb.cp/pr-1023.exp ...
PASS: gdb.cp/pr-1023.exp: break myClass::performBlocking
PASS: gdb.cp/pr-1023.exp: break myClass::performUnblocking
Running src/gdb/testsuite/gdb.cp/pr-1210.exp ...
-FAIL: gdb.cp/pr-1210.exp: step past initialization
-FAIL: gdb.cp/pr-1210.exp: print *obj
-FAIL: gdb.cp/pr-1210.exp: print obj->myB
+PASS: gdb.cp/pr-1210.exp: step past initialization
+PASS: gdb.cp/pr-1210.exp: print *obj
+PASS: gdb.cp/pr-1210.exp: print obj->myB
Running src/gdb/testsuite/gdb.cp/pr-574.exp ...
PASS: gdb.cp/pr-574.exp: continue to breakpoint: end of constructors
PASS: gdb.cp/pr-574.exp: PR gdb/574
@@ -8312,7 +8312,7 @@ PASS: gdb.cp/templates.exp: ptype t5i
PASS: gdb.cp/templates.exp: constructor breakpoint
PASS: gdb.cp/templates.exp: destructor breakpoint
PASS: gdb.cp/templates.exp: value method breakpoint
-FAIL: gdb.cp/templates.exp: print t5i.value()
+PASS: gdb.cp/templates.exp: print t5i.value()
PASS: gdb.cp/templates.exp: print fint
PASS: gdb.cp/templates.exp: print fvpchar
PASS: gdb.cp/templates.exp: ptype Foo
@@ -8810,11 +8810,11 @@ PASS: gdb.mi/mi-basics.exp: make sure tt
PASS: gdb.mi/mi-basics.exp: set tty to mi_inferior_tty_name (the way it was)
PASS: gdb.mi/mi-basics.exp: verify tty is correct
Running src/gdb/testsuite/gdb.mi/mi-break.exp ...
-FAIL: gdb.mi/mi-break.exp: break-insert -t operation
+PASS: gdb.mi/mi-break.exp: break-insert -t operation
PASS: gdb.mi/mi-break.exp: insert temp breakpoint at basics.c:callee2
PASS: gdb.mi/mi-break.exp: insert temp breakpoint at basics.c:$line_callee3_body
PASS: gdb.mi/mi-break.exp: insert temp breakpoint at "<fullfilename>":$line_callee4_head
-FAIL: gdb.mi/mi-break.exp: list of breakpoints
+PASS: gdb.mi/mi-break.exp: list of breakpoints
PASS: gdb.mi/mi-break.exp: delete temp breakpoints
XFAIL: gdb.mi/mi-break.exp: break-insert -r operation
XFAIL: gdb.mi/mi-break.exp: insert breakpoint with regexp callee2
@@ -8837,7 +8837,7 @@ PASS: gdb.mi/mi-cli.exp: -interpreter-ex
PASS: gdb.mi/mi-cli.exp: -interpreter-exec console "break callee4"
PASS: gdb.mi/mi-cli.exp: -interpreter-exec console "info break"
PASS: gdb.mi/mi-cli.exp: -interpreter-exec console "set listsize 1"
-FAIL: gdb.mi/mi-cli.exp: -interpreter-exec console "list"
+PASS: gdb.mi/mi-cli.exp: -interpreter-exec console "list"
PASS: gdb.mi/mi-cli.exp: continue to callee4
PASS: gdb.mi/mi-cli.exp: -interpreter-exec console "delete 2"
PASS: gdb.mi/mi-cli.exp: -interpreter-exec console "up"
@@ -8862,7 +8862,7 @@ PASS: gdb.mi/mi-disassemble.exp: mi runt
PASS: gdb.mi/mi-disassemble.exp: data-disassemble from pc to pc+12 assembly only
PASS: gdb.mi/mi-disassemble.exp: data-disassemble file & line, assembly only
PASS: gdb.mi/mi-disassemble.exp: data-disassemble file, line assembly mixed
-FAIL: gdb.mi/mi-disassemble.exp: data-disassemble range assembly mixed
+PASS: gdb.mi/mi-disassemble.exp: data-disassemble range assembly mixed
PASS: gdb.mi/mi-disassemble.exp: data-disassemble bogus filename
PASS: gdb.mi/mi-disassemble.exp: data-disassemble bogus address
PASS: gdb.mi/mi-disassemble.exp: data-disassemble mix different args
@@ -8887,7 +8887,7 @@ FAIL: gdb.mi/mi-file-transfer.exp: get b
FAIL: gdb.mi/mi-file-transfer.exp: compare binary file
FAIL: gdb.mi/mi-file-transfer.exp: deleted binary file
Running src/gdb/testsuite/gdb.mi/mi-file.exp ...
-FAIL: gdb.mi/mi-file.exp: request path info of current source file (basics.c)
+PASS: gdb.mi/mi-file.exp: request path info of current source file (basics.c)
PASS: gdb.mi/mi-file.exp: Getting a list of source files.
Running src/gdb/testsuite/gdb.mi/mi-hack-cli.exp ...
PASS: gdb.mi/mi-hack-cli.exp: show architecture
@@ -8914,14 +8914,14 @@ PASS: gdb.mi/mi-pthreads.exp: check_mi_t
Running src/gdb/testsuite/gdb.mi/mi-read-memory.exp ...
PASS: gdb.mi/mi-read-memory.exp: breakpoint at main
PASS: gdb.mi/mi-read-memory.exp: mi runto main
-FAIL: gdb.mi/mi-read-memory.exp: next at main (unknown output after running)
+PASS: gdb.mi/mi-read-memory.exp: next at main
PASS: gdb.mi/mi-read-memory.exp: no arguments
-FAIL: gdb.mi/mi-read-memory.exp: 3x2, one byte
-FAIL: gdb.mi/mi-read-memory.exp: 3x2, one byte offset by -6
-FAIL: gdb.mi/mi-read-memory.exp: expression in quotes
-FAIL: gdb.mi/mi-read-memory.exp: ascii and data
-FAIL: gdb.mi/mi-read-memory.exp: decimal
-FAIL: gdb.mi/mi-read-memory.exp: octal
+PASS: gdb.mi/mi-read-memory.exp: 3x2, one byte
+PASS: gdb.mi/mi-read-memory.exp: 3x2, one byte offset by -6
+PASS: gdb.mi/mi-read-memory.exp: expression in quotes
+PASS: gdb.mi/mi-read-memory.exp: ascii and data
+PASS: gdb.mi/mi-read-memory.exp: decimal
+PASS: gdb.mi/mi-read-memory.exp: octal
Running src/gdb/testsuite/gdb.mi/mi-regs.exp ...
Running src/gdb/testsuite/gdb.mi/mi-return.exp ...
PASS: gdb.mi/mi-return.exp: breakpoint at callee4
@@ -8929,15 +8929,15 @@ PASS: gdb.mi/mi-return.exp: mi runto cal
PASS: gdb.mi/mi-return.exp: delete all breakpoints
PASS: gdb.mi/mi-return.exp: return from callee4 now
Running src/gdb/testsuite/gdb.mi/mi-simplerun.exp ...
-FAIL: gdb.mi/mi-simplerun.exp: break-insert operation
+PASS: gdb.mi/mi-simplerun.exp: break-insert operation
PASS: gdb.mi/mi-simplerun.exp: insert breakpoint at basics.c:callee2
PASS: gdb.mi/mi-simplerun.exp: insert breakpoint at basics.c:$line_callee3_head
PASS: gdb.mi/mi-simplerun.exp: insert breakpoint at "<fullfilename>":$line_callee4_head
-FAIL: gdb.mi/mi-simplerun.exp: list of breakpoints
+PASS: gdb.mi/mi-simplerun.exp: list of breakpoints
PASS: gdb.mi/mi-simplerun.exp: disabling of breakpoints
PASS: gdb.mi/mi-simplerun.exp: list of breakpoints, 16 disabled
-FAIL: gdb.mi/mi-simplerun.exp: run to main (2)
-FAIL: gdb.mi/mi-simplerun.exp: next at main (unknown output after running)
+PASS: gdb.mi/mi-simplerun.exp: run to main
+PASS: gdb.mi/mi-simplerun.exp: next at main
PASS: gdb.mi/mi-simplerun.exp: step at main
PASS: gdb.mi/mi-simplerun.exp: step to callee4
PASS: gdb.mi/mi-simplerun.exp: exec-finish
@@ -8974,9 +8974,9 @@ PASS: gdb.mi/mi-stack.exp: stack info-de
Running src/gdb/testsuite/gdb.mi/mi-stepi.exp ...
PASS: gdb.mi/mi-stepi.exp: breakpoint at main
PASS: gdb.mi/mi-stepi.exp: mi runto main
-FAIL: gdb.mi/mi-stepi.exp: step-instruction at main (timeout)
-FAIL: gdb.mi/mi-stepi.exp: next-instruction at main (timeout)
-FAIL: gdb.mi/mi-stepi.exp: next-instruction at main (timeout)
+PASS: gdb.mi/mi-stepi.exp: step-instruction at main
+PASS: gdb.mi/mi-stepi.exp: next-instruction at main
+PASS: gdb.mi/mi-stepi.exp: next-instruction at main
Running src/gdb/testsuite/gdb.mi/mi-syn-frame.exp ...
Running src/gdb/testsuite/gdb.mi/mi-until.exp ...
PASS: gdb.mi/mi-until.exp: break-insert operation
@@ -9569,11 +9569,11 @@ PASS: gdb.mi/mi2-basics.exp: environment
PASS: gdb.mi/mi2-basics.exp: environment-path -r dir operation
PASS: gdb.mi/mi2-basics.exp: environment-path -r operation
Running src/gdb/testsuite/gdb.mi/mi2-break.exp ...
-FAIL: gdb.mi/mi2-break.exp: break-insert -t operation
+PASS: gdb.mi/mi2-break.exp: break-insert -t operation
PASS: gdb.mi/mi2-break.exp: insert temp breakpoint at basics.c:callee2
PASS: gdb.mi/mi2-break.exp: insert temp breakpoint at basics.c:$line_callee3_body
PASS: gdb.mi/mi2-break.exp: insert temp breakpoint at "<fullfilename>":$line_callee4_head
-FAIL: gdb.mi/mi2-break.exp: list of breakpoints
+PASS: gdb.mi/mi2-break.exp: list of breakpoints
PASS: gdb.mi/mi2-break.exp: delete temp breakpoints
XFAIL: gdb.mi/mi2-break.exp: break-insert -r operation
XFAIL: gdb.mi/mi2-break.exp: insert breakpoint with regexp callee2
@@ -9594,7 +9594,7 @@ PASS: gdb.mi/mi2-cli.exp: -interpreter-e
PASS: gdb.mi/mi2-cli.exp: -interpreter-exec console "break callee4"
PASS: gdb.mi/mi2-cli.exp: -interpreter-exec console "info break"
PASS: gdb.mi/mi2-cli.exp: -interpreter-exec console "set listsize 1"
-FAIL: gdb.mi/mi2-cli.exp: -interpreter-exec console "list"
+PASS: gdb.mi/mi2-cli.exp: -interpreter-exec console "list"
PASS: gdb.mi/mi2-cli.exp: continue to callee4
PASS: gdb.mi/mi2-cli.exp: -interpreter-exec console "delete 2"
PASS: gdb.mi/mi2-cli.exp: -interpreter-exec console "up"
@@ -9618,7 +9618,7 @@ PASS: gdb.mi/mi2-disassemble.exp: mi run
PASS: gdb.mi/mi2-disassemble.exp: data-disassemble from pc to pc+12 assembly only
PASS: gdb.mi/mi2-disassemble.exp: data-disassemble file & line, assembly only
PASS: gdb.mi/mi2-disassemble.exp: data-disassemble file, line assembly mixed
-FAIL: gdb.mi/mi2-disassemble.exp: data-disassemble range assembly mixed
+PASS: gdb.mi/mi2-disassemble.exp: data-disassemble range assembly mixed
PASS: gdb.mi/mi2-disassemble.exp: data-disassemble bogus filename
PASS: gdb.mi/mi2-disassemble.exp: data-disassemble bogus address
PASS: gdb.mi/mi2-disassemble.exp: data-disassemble mix different args
@@ -9638,7 +9638,7 @@ PASS: gdb.mi/mi2-eval.exp: eval &A
PASS: gdb.mi/mi2-eval.exp: eval A+3
PASS: gdb.mi/mi2-eval.exp: eval A + 3
Running src/gdb/testsuite/gdb.mi/mi2-file.exp ...
-FAIL: gdb.mi/mi2-file.exp: request path info of current source file (basics.c)
+PASS: gdb.mi/mi2-file.exp: request path info of current source file (basics.c)
Running src/gdb/testsuite/gdb.mi/mi2-hack-cli.exp ...
PASS: gdb.mi/mi2-hack-cli.exp: show architecture
PASS: gdb.mi/mi2-hack-cli.exp: 47show architecture
@@ -9660,14 +9660,14 @@ PASS: gdb.mi/mi2-pthreads.exp: check_mi_
Running src/gdb/testsuite/gdb.mi/mi2-read-memory.exp ...
PASS: gdb.mi/mi2-read-memory.exp: breakpoint at main
PASS: gdb.mi/mi2-read-memory.exp: mi runto main
-FAIL: gdb.mi/mi2-read-memory.exp: next at main (unknown output after running)
+PASS: gdb.mi/mi2-read-memory.exp: next at main
PASS: gdb.mi/mi2-read-memory.exp: no arguments
-FAIL: gdb.mi/mi2-read-memory.exp: 3x2, one byte
-FAIL: gdb.mi/mi2-read-memory.exp: 3x2, one byte offset by -6
-FAIL: gdb.mi/mi2-read-memory.exp: expression in quotes
-FAIL: gdb.mi/mi2-read-memory.exp: ascii and data
-FAIL: gdb.mi/mi2-read-memory.exp: decimal
-FAIL: gdb.mi/mi2-read-memory.exp: octal
+PASS: gdb.mi/mi2-read-memory.exp: 3x2, one byte
+PASS: gdb.mi/mi2-read-memory.exp: 3x2, one byte offset by -6
+PASS: gdb.mi/mi2-read-memory.exp: expression in quotes
+PASS: gdb.mi/mi2-read-memory.exp: ascii and data
+PASS: gdb.mi/mi2-read-memory.exp: decimal
+PASS: gdb.mi/mi2-read-memory.exp: octal
Running src/gdb/testsuite/gdb.mi/mi2-regs.exp ...
Running src/gdb/testsuite/gdb.mi/mi2-return.exp ...
PASS: gdb.mi/mi2-return.exp: breakpoint at callee4
@@ -9675,15 +9675,15 @@ PASS: gdb.mi/mi2-return.exp: mi runto ca
PASS: gdb.mi/mi2-return.exp: delete all breakpoints
PASS: gdb.mi/mi2-return.exp: return from callee4 now
Running src/gdb/testsuite/gdb.mi/mi2-simplerun.exp ...
-FAIL: gdb.mi/mi2-simplerun.exp: break-insert operation
+PASS: gdb.mi/mi2-simplerun.exp: break-insert operation
PASS: gdb.mi/mi2-simplerun.exp: insert breakpoint at basics.c:callee2
PASS: gdb.mi/mi2-simplerun.exp: insert breakpoint at basics.c:$line_callee3_head
PASS: gdb.mi/mi2-simplerun.exp: insert breakpoint at "<fullfilename>":$line_callee4_head
-FAIL: gdb.mi/mi2-simplerun.exp: list of breakpoints
+PASS: gdb.mi/mi2-simplerun.exp: list of breakpoints
PASS: gdb.mi/mi2-simplerun.exp: disabling of breakpoints
PASS: gdb.mi/mi2-simplerun.exp: list of breakpoints, 16 disabled
-FAIL: gdb.mi/mi2-simplerun.exp: run to main (2)
-FAIL: gdb.mi/mi2-simplerun.exp: next at main (unknown output after running)
+PASS: gdb.mi/mi2-simplerun.exp: run to main
+PASS: gdb.mi/mi2-simplerun.exp: next at main
PASS: gdb.mi/mi2-simplerun.exp: step at main
PASS: gdb.mi/mi2-simplerun.exp: step to callee4
PASS: gdb.mi/mi2-simplerun.exp: exec-finish
@@ -9720,9 +9720,9 @@ PASS: gdb.mi/mi2-stack.exp: stack info-d
Running src/gdb/testsuite/gdb.mi/mi2-stepi.exp ...
PASS: gdb.mi/mi2-stepi.exp: breakpoint at main
PASS: gdb.mi/mi2-stepi.exp: mi runto main
-FAIL: gdb.mi/mi2-stepi.exp: step-instruction at main (timeout)
-FAIL: gdb.mi/mi2-stepi.exp: next-instruction at main (timeout)
-FAIL: gdb.mi/mi2-stepi.exp: next-instruction at main (timeout)
+PASS: gdb.mi/mi2-stepi.exp: step-instruction at main
+PASS: gdb.mi/mi2-stepi.exp: next-instruction at main
+PASS: gdb.mi/mi2-stepi.exp: next-instruction at main
Running src/gdb/testsuite/gdb.mi/mi2-syn-frame.exp ...
Running src/gdb/testsuite/gdb.mi/mi2-until.exp ...
PASS: gdb.mi/mi2-until.exp: break-insert operation
@@ -10717,8 +10717,8 @@ PASS: gdb.xml/tdesc-xinclude.exp: set td
=== gdb Summary ===
-# of expected passes 9704
-# of unexpected failures 326
+# of expected passes 9867
+# of unexpected failures 163
# of expected failures 59
# of known failures 21
# of unresolved testcases 37
^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: skip __main
2008-01-29 15:48 ` Pedro Alves
@ 2008-01-29 16:20 ` Pierre Muller
2008-01-29 20:26 ` Pedro Alves
0 siblings, 1 reply; 5+ messages in thread
From: Pierre Muller @ 2008-01-29 16:20 UTC (permalink / raw)
To: 'Pedro Alves'; +Cc: 'GDB Patches'
OK, you are right. It better to leave "main".
=== gdb Summary ===
-# of expected passes 9704
-# of unexpected failures 326
+# of expected passes 9867
+# of unexpected failures 163
# of expected failures 59
# of known failures 21
# of unresolved testcases 37
I was wondering: you get much less errors
than I do, do you have any special restrictions
applied on your testsuite?
The number of expected passes is also lower than
mine, maybe you didn't use 'cvs up -d' for
a while in the testsuite directory?
This is my last result on CVS gdb
that I got using
make check RUNTESTFLAGS='--ignore manythreads.exp'
=== gdb Summary ===
# of expected passes 10619
# of unexpected failures 529
# of unexpected successes 1
# of expected failures 58
# of known failures 31
# of unresolved testcases 38
# of untested testcases 14
# of unsupported tests 34
With your patch and the same RUNTESTFLAGS,
I go down to:
# of expected passes 10787
# of unexpected failures 351
# of unexpected successes 1
# of expected failures 58
# of known failures 32
# of unresolved testcases 38
# of untested testcases 14
# of unsupported tests 34
So I also get 178 errors less!
This is really good!
Pierre
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: skip __main
2008-01-29 16:20 ` Pierre Muller
@ 2008-01-29 20:26 ` Pedro Alves
0 siblings, 0 replies; 5+ messages in thread
From: Pedro Alves @ 2008-01-29 20:26 UTC (permalink / raw)
To: Pierre Muller; +Cc: 'GDB Patches'
Pierre Muller wrote:
> I was wondering: you get much less errors
> than I do, do you have any special restrictions
> applied on your testsuite?
>
Oh, right. I was using this old
board file in this machine:
# The canonical unix board description.
load_generic_config "unix";
process_multilib_options "";
set_board_info compiler "[find_gcc]";
set_board_info bmk,use_alarm 1;
set_board_info gdb,noinferiorio 1;
set_board_info gdb,nosignals 1;
set_board_info ldflags "-Wl,--enable-auto-import"
send_user "configuring for cygwin testing\n";
It just skipped a bunch of problems I knew we had.
I'll stop using this on the machine I use to to testing
before submitting. Thanks!
My testsuite rerun showed exacly the same results as before.
I notice that latelly I don't need to manually
rerun tests anymore, which is great.
Now we just need a maintainer to comment on the patch.
--
Pedro Alves
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2008-01-29 20:25 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-01-29 5:35 skip __main Pedro Alves
2008-01-29 8:50 ` Pierre Muller
2008-01-29 15:48 ` Pedro Alves
2008-01-29 16:20 ` Pierre Muller
2008-01-29 20:26 ` Pedro Alves
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox