This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [testsuite patch] Fix new FAIL: py-frame.exp: test Frame.read_register(rip)
- From: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- To: Yao Qi <yao at codesourcery dot com>
- Cc: gdb-patches at sourceware dot org, Sasha Smundak <asmundak at google dot com>
- Date: Sun, 11 Jan 2015 15:51:14 +0100
- Subject: Re: [testsuite patch] Fix new FAIL: py-frame.exp: test Frame.read_register(rip)
- Authentication-results: sourceware.org; auth=none
- References: <20150107143820 dot GA1482 at host2 dot jankratochvil dot net> <87r3v1s9ld dot fsf at codesourcery dot com>
On Sun, 11 Jan 2015 14:58:06 +0100, Yao Qi wrote:
> With your patch applied, this test is skipped on 'x86_64 -m32'. I
> prefer to increasing the test coverage, so how about extending the test
> for 'x86_64 -m32'? I mean test Frame.read_register(eip)...
OK this way?
Thanks,
Jan
gdb/testsuite/
2015-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb.python/py-frame.exp (test Frame.read_register(rip)): Use
is_amd64_regs_target and is_x86_like_target.
diff --git a/gdb/testsuite/gdb.python/py-frame.exp b/gdb/testsuite/gdb.python/py-frame.exp
index bf2e1ce..33fdbe5 100644
--- a/gdb/testsuite/gdb.python/py-frame.exp
+++ b/gdb/testsuite/gdb.python/py-frame.exp
@@ -105,9 +105,15 @@ gdb_test "python print ('result = %s' % (f0.read_register('pc') == f0.pc()))" \
" = True" \
"test Frame.read_register(pc)"
-# On x86-64, PC is in $rip register.
-if {[istarget x86_64-*]} {
- gdb_test "python print ('result = %s' % (f0.read_register('pc') == f0.read_register('rip')))" \
+# Test arch-specific register name.
+set pc ""
+if {[is_amd64_regs_target]} {
+ set pc "rip"
+} elseif {[is_x86_like_target]} {
+ set pc "eip"
+}
+if { $pc != "" } {
+ gdb_test "python print ('result = %s' % (f0.read_register('pc') == f0.read_register('$pc')))" \
" = True" \
- "test Frame.read_register(rip)"
+ "test Frame.read_register($pc)"
}