This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Regression: Re: [PATCH] Fix some i386 unwinder inconcistencies
- From: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- To: Mark Kettenis <mark dot kettenis at xs4all dot nl>
- Cc: gdb-patches at sourceware dot org
- Date: Mon, 13 Jun 2011 12:49:11 +0200
- Subject: Regression: Re: [PATCH] Fix some i386 unwinder inconcistencies
- References: <201106122057.p5CKvUEa030437@glazunov.sibelius.xs4all.nl>
On Sun, 12 Jun 2011 22:57:30 +0200, Mark Kettenis wrote:
> This diff fixes a few issues with the epilogue and stack tramp unwinders.
>
> Committed.
>
> 2011-06-12 Mark Kettenis <kettenis@gnu.org>
>
> * i386-tdep.c (i386_epilogue_frame_cache): Simplify code. Call
> get_frame_func instead of get_frame_pc to determine the code
> address used to construct the frame ID.
> (i386_epilogue_frame_unwind_stop_reason): Fix coding style.
> (i386_epilogue_frame_this_id): Likewise.
> (i386_epilogue_frame_prev_register): New function.
> (i386_epilogue_frame_unwind): Use i386_epilogue_frame_prev_register.
> (i386_stack_tramp_frame_sniffer): Fix coding style.
> (i386_stack_tramp_frame_unwind): Use i386_epilogue_frame_prev_register.
> (i386_gdbarch_init): Fix comments.
On all the tested platforms Fedora-{13,14,15,Rawhide} for {i686,x86_64-m32}
(but not for x86_64):
-PASS: gdb.base/watchpoint-cond-gone.exp: Catch the no longer valid watchpoint
+FAIL: gdb.base/watchpoint-cond-gone.exp: Catch the no longer valid watchpoint
-XFAIL: gdb.mi/mi-watch.exp: sw: watchpoint trigger (stopped at wrong place)
+XFAIL: gdb.mi/mi-watch.exp: sw: watchpoint trigger (unknown output after running)
-XFAIL: gdb.mi/mi2-watch.exp: sw: watchpoint trigger (stopped at wrong place)
+XFAIL: gdb.mi/mi2-watch.exp: sw: watchpoint trigger (unknown output after running)
due to: commit b304e1f3bb4fee38d829dbd85ea3c0f43399aa7c
This is a regression.
The regressions are all just instances of:
finish
Run till exit from #0 func () at ./gdb.base/watchpoint-cond-gone.c:26
-
-Watchpoint 3 deleted because the program has left the block in
-which its expression is valid.
+Error evaluating expression for watchpoint 3
+can't compute CFA for this frame
+Watchpoint 3 deleted.
0x080483e0 in func () at ./gdb.base/watchpoint-cond-gone.c:28
28 }
-(gdb) PASS: gdb.base/watchpoint-cond-gone.exp: Catch the no longer valid watchpoint
+(gdb) FAIL: gdb.base/watchpoint-cond-gone.exp: Catch the no longer valid watchpoint
Thanks,
Jan