64-bit pei vs dwarf2

Kai Tietz ktietz70@googlemail.com
Tue Sep 28 15:21:00 GMT 2010

2010/9/28 Richard Henderson <rth@twiddle.net>:
> The 64-bit PEI format has a SECREL32 relocation type.  It
> does not, however, have a SECREL64 relocation type.  Which
> means that for
>> #define DWARF_REF_SIZE  \
>>   (dwarf_version == 2 ? DWARF2_ADDR_SIZE : DWARF_OFFSET_SIZE)
> we don't really have something to use for for dwarf2.
> I could fake it with
>        .secrel32       ref
>        .long           0
> but it seems better simply to force the use of dwarf3
> for this target.  Suggestions about how to go about this
> within the tangled mess of option processing?
> r~

Well, dwarf-3 is ok, if it helps to solve the issue. On the other hand
to fake it by secrel32   ref ; .long 0 looks not wrong to me. As PE+
is limited in image size to 2GB there should be any issue about it. A
section relative offset can't get bigger then 2^31 bits.
We could introduce here a .seclrel64 relocation, but wouldn't be
covered by standard.


|  (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| (")_(") him gain world domination

More information about the Gcc mailing list