[testsuite patch] Fix new FAIL: py-frame.exp: test Frame.read_register(rip)
authorJan Kratochvil <jan.kratochvil@redhat.com>
Mon, 12 Jan 2015 10:02:46 +0000 (11:02 +0100)
committerJan Kratochvil <jan.kratochvil@redhat.com>
Mon, 12 Jan 2015 10:02:46 +0000 (11:02 +0100)
for x86_64 -m32 run one gets:

+FAIL: gdb.python/py-frame.exp: test Frame.read_register(rip)

I do not have x32 OS here but the %rip test should PASS there I think.

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)...

gdb/testsuite/ChangeLog
2015-01-12  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.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.python/py-frame.exp

index 6e967c7822ea6e6008c6421a7132d2ea88e7d83b..7343d038e68422d77ae576e520af97dec38a606c 100644 (file)
@@ -1,3 +1,8 @@
+2015-01-12  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.
+
 2015-01-11  Doug Evans  <xdje42@gmail.com>
 
        * lib/dwarf.exp (Dwarf): Flag an error if a numeric attribute value
index bf2e1ce97b203f4317d6a4efd1be77b2a4cb91eb..33fdbe5ff6239a23d5885faf57bc8f2f9c889ec2 100644 (file)
@@ -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)"
 }