On 08/21/2015 07:58 AM, Richard Sandiford wrote:
This is yet another bug caused by rtx having modeless scalar integer
constants. We need to use context to find the actual mode of a
CONST_INT or CONST_WIDE_INT.
We've been bumping into these as long as I can remember. I suspect I
still have a great essay from Jim on why it's hard to fix on a hard
drive from one of my old HP boxes from the early 90s ;-)
gcc/
PR debug/66728
* dwarf2out.c (loc_descriptor): Remove redundant GET_MODE of
CONST_WIDE_INTs. Handle BLKmode for CONST_WIDE_INT too.
(add_const_value_attribute): Add a mode parameter.
Check it for CONST_INT and CONST_WIDE_INT. Use it to build
wide_int values.
(add_location_or_const_value_attribute): Update call.
(tree_add_const_value_attribute): Likewise.
I'll have to defer to Jason & Jakub on this. Note Jakub is on PTO right
now.
jeff