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.

Cheers,
Kai

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



More information about the Gcc mailing list