native hppa2.0w-hp-hpux11.00, 32-bit versus 64-bit

Michael Elizabeth Chastain
2004-06-26T23:28:45Z

We've got this test script to print hp register values,
gdb/testsuite/gdb.hp/gdb.base-hp/reg.exp. I'm working on it because
the hp register code changed between 6.1 and HEAD. There's some
cosmetic differences in the results, which are easy for me to fix,
and there's some 32-bit/64-bit changes, which I need help with.

I'm testing with gdb 6.1.1 and with gdb HEAD 2004-06-01.
My gdb's are native hppa2.0w-hp-hpux11.00, and I built them with
gcc 3.3.2 using no special flags.

Here is my actual output:

# gdb 6.1.1
# gdb built with gcc 3.3.2, no special flags
(gdb) info reg r19
r19 deadbeefbadcadee
(gdb) print /x $r19
$1 = 0xbadcadee^M

# gdb HEAD 2004-06-01
# gdb built with gcc 3.3.2, no special flags
(gdb) info reg r19
r19 0xbadcadee 3135024622
(gdb) print /x $r19
$1 = 0xbadcadee^M

The inferior program has used assembly language to build a 64-bit
value in $r19, and I'm using gdb to examine the value.

In three of these four instances, there's 32-bit truncation going on.
I need to figure out how to mark these in the test suite.

In my view, the only correct result is the full 64-bit result.
I want to make the test results be:

# gdb 6.1.1
PASS: gdb.base-hp/reg.exp: info reg r19
KFAIL: gdb.base-hp/reg.exp: print /x $r19 (pr gdb/NNNN)

# gdb HEAD 2004-06-01
KFAIL: gdb.base-hp/reg.exp: info reg r19 (pr gdb/NNNN)
KFAIL: gdb.base-hp/reg.exp: print /x $r19 (pr gdb/NNNN)

The alternative would be to consider 32-bit truncation to be okay
issue a PASS on all four results.

Advice please?

Michael C