"optimized out" on gdb.base/gdb1090.exp

Edjunior Barbosa Machado emachado@linux.vnet.ibm.com
Tue Apr 12 01:16:00 GMT 2011


running the testcase gdb.base/gdb1090.exp on ppc64 using gcc 4.3.4, noticed an unexpected error in the second test:

#1  0x00000000100005dc in foo () at ../../../gdb.git/gdb/testsuite/gdb.base/gdb1090.c:39^M
39        marker (s24);^M
(gdb) PASS: gdb.base/gdb1090.exp: up from marker
print s24^M
$1 = <optimized out>^M
(gdb) FAIL: gdb.base/gdb1090.exp: print s24

According to readelf output, s24 uses r9, which is a volatile register.
However, the content is properly printed when using gcc 4.4.5 (var s24 goes to r30, which is not volatile on power)

Just wondering, can we consider this last test as untested (or even pass) when print returns "optimized out", since it does not print garbage (which was the original issue from gdb/1090)?


More information about the Gdb mailing list