libdw: Handle DW_OP_GNU_uninit in dwarf_getlocation
authorMark Wielaard <mark@klomp.org>
Fri, 10 Feb 2023 12:56:58 +0000 (13:56 +0100)
committerMark Wielaard <mark@klomp.org>
Tue, 14 Feb 2023 16:28:40 +0000 (17:28 +0100)
commiteab09c65a9eacb3f6001488f6980e5ac8f0c0aeb
tree7f26da34299c8b63545965f470a382739417999c
parent922068cebba6ed0dfc2da0a9e40e3e1b63e0aca9
libdw: Handle DW_OP_GNU_uninit in dwarf_getlocation

dwarf_getlocation would return an error when it saw a
DW_OP_GNU_uninit. Handle it by simply recognizing as a no argument
operation.

DW_OP_GNU_uninit is emitted by GCC as a marker to flag the location
expression as referring to an uninitialized value.

Signed-off-by: Mark Wielaard <mark@klomp.org>
libdw/ChangeLog
libdw/dwarf_getlocation.c
tests/ChangeLog
tests/varlocs.c