[gdb/testsuite] Fix base address selection entry encoding in dw2-skip-prologue.S
authorTom de Vries <tdevries@suse.de>
Tue, 14 May 2019 08:10:08 +0000 (10:10 +0200)
committerTom de Vries <tdevries@suse.de>
Tue, 14 May 2019 08:10:08 +0000 (10:10 +0200)
A base address selection entry in a location list consist of two (constant or
relocated) address offsets.  The two offsets are the same size as an address
on the target machine.

The test-case gdb.dwarf2/dw2-skip-prologue.S encodes a base address selection
entry using .4byte, which is incorrect for 8-byte pointer size. [ Which
triggers an assert in dwz, see PR dwz/24172. ]

Fix this by using PTRBYTE instead.

Tested on x86_64-linux.

gdb/testsuite/ChangeLog:

2019-05-14  Tom de Vries  <tdevries@suse.de>

* gdb.dwarf2/dw2-skip-prologue.S (.debug_loc): Fix base address
selection entry encoding.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.dwarf2/dw2-skip-prologue.S

index 252a183..d8847bc 100644 (file)
@@ -1,3 +1,8 @@
+2019-05-14  Tom de Vries  <tdevries@suse.de>
+
+       * gdb.dwarf2/dw2-skip-prologue.S (.debug_loc): Fix base address
+       selection entry encoding.
+
 2019-05-10  Tom Tromey  <tromey@adacore.com>
 
        * gdb.ada/info_exc.exp: Add "complete" test.
index cef6e6d..a55699f 100644 (file)
        .section        .debug_loc
 loclist:
        /* Reset the location list base address first.  */
-       .4byte          -1, 0
+       PTRBYTE         -1, 0
 
        PTRBYTE         func_start, func_end
        .2byte          2f-1f