PE+ and new COFF format for x86_64 target for XP64 and Vista binaries
Kai Tietz
Kai.Tietz@onevision.com
Wed Sep 13 11:50:00 GMT 2006
Hallo Pedro,
I tested the testsuites on i386-linux cross and native for binutils, gas,
and ld. Sorry for, but I have no other architecture available.
Here comes the two first parts of the patch. There will be another three
for binutils, gas, and ld coming up soon.
Change log modifications for include/coff
* external.h: Add proper external_aouthdr64 structure (without
data_start member)
AOUTHDRSZ64: Set according structure size
AOUTHDR64: As typedef of external_aouthdr64
structure
* internal.h: Add relocation identifiers for coff
* pe.h: Add define IMAGE_FILE_MACHINE_AMD64 the coff signature
PEPAOUTHDR: Adjust structure to have proper
size (using AOUTHDR64)
PEPAOUTSZ: Calculated size of 240
* x86_64.h: New file for coff information for x86_64 (AMD64)
Changes log modifications for bfd
* configure.in: Added new target-vectors x86_64coff_vec,
x86_64pe_vec, and x86_64pei_vec
* config.bfd: Adjusted x86_64 target architecture
detection
* bfd.c: Add for new target "coff-x86-64"
bfd_get_sign_extend: Add target vector idents for
pe-x86-64. and pei-x86-64
* coff-x86_64.c: Add new file for x86_64 (AMD64) coff
support
* libpei.h Adjustments for
COFF_WITH_pex64
* coffcode.h: Add for new target machine,
architecture, signature, and internal
signature
handler.
* makefile.am: Add new files to target-all and define make-rule
for pex64igen.c
* makefile.in: Add new files to target-all and define make-rule
for pex64igen.c
* pe-x86_64.c: Add for new target "pe-x86-64"
* pei-x86_64.c: Add for new target "pei-x86-64"
* peicode.h: Adjusts for new targets
coff_swap_filehdr_out: set for this target to
_bfd_pex64_only_swap_filehdr_out
SIZEOF_IDATA4: define it as 8
byte size for this target
SIZEOF_IDATA5: define it as 8
byte size for this target
jump_table jtab: Add for AMD64MAGIC
pe_ILF_build_a_bfd: Adjusts for new size of
SIZEOF_IDATA4 and SIZE_IDATA5
pe_ILF_object_p: Add coff
image-file signature to internal signature translation
* pexxigen.c: Adjust proper include of target
coff-header and introduced target specific code
COFF_WITH_pex64: New macro for this target
pe_print_idata: New dumping method for import section of
PE+ files
* target.c: Add new target vectors declarations for
x86_64 coff targets
Regards,
i.A. Kai Tietz
-------------- next part --------------
A non-text attachment was scrubbed...
Name: binutils-2.17.pex-64.060913_bfd.diff
Type: application/octet-stream
Size: 52697 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20060913/4280e79c/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: binutils-2.17.pex-64.060913_include.diff
Type: application/octet-stream
Size: 7174 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20060913/4280e79c/attachment-0001.obj>
More information about the Binutils
mailing list