dwarf2 EH address size
DJ Delorie
dj@redhat.com
Fri Jan 25 01:58:00 GMT 2008
The m32c port has this:
#define DWARF2_ADDR_SIZE 4
However, dwarf2asm.c has this:
int
size_of_encoded_value (int encoding)
{
. . .
case DW_EH_PE_absptr:
return POINTER_SIZE / BITS_PER_UNIT;
The net result is that the EH sections have 2 byte pointers for the
m16c variant (HImode pointers), which screws up binutils, which is
expecting 4. The m32c variant (PSImode pointers) is OK.
Before I go hard-coding a "2" into binutils, I ask... is gcc supposed
to honor DWARF2_ADDR_SIZE for absptr? What's the reasoning behind the
way it is?
More information about the Gcc
mailing list