This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: implptrconst.exp error on 32-bit targets [Re: [3/4] fix DW_OP_GNU_implicit_pointer pointing to a constant]
- From: Tom Tromey <tromey at redhat dot com>
- To: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Mon, 13 May 2013 11:29:55 -0600
- Subject: Re: implptrconst.exp error on 32-bit targets [Re: [3/4] fix DW_OP_GNU_implicit_pointer pointing to a constant]
- References: <87vc7ukvl0 dot fsf at fleche dot redhat dot com> <87a9o7yk11 dot fsf at fleche dot redhat dot com> <20130512151434 dot GA7026 at host2 dot jankratochvil dot net>
>>>>> "Jan" == Jan Kratochvil <jan.kratochvil@redhat.com> writes:
Jan> runtest CC_FOR_TARGET="gcc -m32" gdb.dwarf2/implptrconst.exp
Jan> gdb compile failed, .../gdb/testsuite/gdb.dwarf2/implptrconst-dw.S:
Jan> Assembler messages:
Jan> .../gdb/testsuite/gdb.dwarf2/implptrconst-dw.S:42: Error: cannot
Jan> represent relocation type BFD_RELOC_64
Jan> Fedora 19 x86_64
Jan> So it should be either made 32-bit clean or it should be skipped for 32-bit
Jan> targets.
Let me know what you think of this.
I tested it on x86-64 Fedora 18, both ways.
Tom
b/gdb/testsuite/ChangeLog:
2013-05-13 Tom Tromey <tromey@redhat.com>
* gdb.dwarf2/implptrconst.exp: Create a CU with 4 byte address
size and change type sizes to 4 bytes.
diff --git a/gdb/testsuite/gdb.dwarf2/implptrconst.exp b/gdb/testsuite/gdb.dwarf2/implptrconst.exp
index 4ce1713..7eca600 100644
--- a/gdb/testsuite/gdb.dwarf2/implptrconst.exp
+++ b/gdb/testsuite/gdb.dwarf2/implptrconst.exp
@@ -27,7 +27,9 @@ standard_testfile .c implptrconst-dw.S
# Make some DWARF for the test.
set asm_file [standard_output_file $srcfile2]
Dwarf::assemble $asm_file {
- cu 0 2 8 {
+ # Creating a CU with 4-byte addresses lets this test link on both
+ # 32- and 64-bit machines.
+ cu 0 2 4 {
compile_unit {} {
declare_labels byte_label size_type_label array_label
declare_labels var_label ptr_label
@@ -41,7 +43,7 @@ Dwarf::assemble $asm_file {
size_type_label: base_type {
{name sizetype}
{encoding @DW_ATE_unsigned}
- {byte_size 8 DW_FORM_sdata}
+ {byte_size 4 DW_FORM_sdata}
}
array_label: array_type {
@@ -60,7 +62,7 @@ Dwarf::assemble $asm_file {
}
ptr_label: pointer_type {
- {byte_size 8 DW_FORM_sdata}
+ {byte_size 4 DW_FORM_sdata}
{type :$byte_label}
}