This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

dwarf2 EH address size


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?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]