This is the mail archive of the binutils@sourceware.org mailing list for the binutils 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]

Re: PATCH: w64 native support


On 4/18/07, Kai Tietz <Kai.Tietz@onevision.com> wrote:
"H. J. Lu" <hjl@lucon.org> wrote on 11.04.2007 16:07:40:

> We do need a new type when casting from pointer to integer. But
> it should be determined in autoconf. You can use AC_CHECK_SIZEOF.

I adjust my patch not using the printf macro and using configure.in in bfd
to find the proper type for bfd_hostptr_t. Also I adjust the autodetection
of 64 bit in configure by using the size of a "void *" == 8 for detection.

ChangeLog:

2007-04-18 Kai Tietz <kai.tietz@onevision.com>

       * bfd/bfd-in.h: (BFD_HOST_64BIT_LONG_LONG): New
       as equivalent for BFD_HOST_64BIT_LONG.
       (BFD_HOSTPTR_T): Host pointer type for casting a
       pointer to an integer type.
       (bfd_hostptr_t): The typedef of BFD_HOSTPTR_T.
       (sprintf_vma, fprintf_vma): Add support for long long prints.
       * bfd/bfd-in2.h: Regenerate.
       * bfd/configure.in: (BFD_HOST_64BIT_LONG_LONG): New
       as equivalent for BFD_HOST_64BIT_LONG.
       (BFD_HOSTPTR_T): Host pointer type for casting a
       pointer to an integer type. Defauls is "unsigned long".
       (AC_CHECK_SIZEOF(void *)): New.
       (host64): Set it if the pointer size is 8.
       * bfd/configure: Regenerate.
       * bfd/config.in: Add macro SIZEOF_VOID_P.
       * bfd/coffcode.h: Replace host ptr type assuming "long" to
       bfd_hostptr_t type.
       * bfd/coffgen.c: Likewise.
       * bfd/elf-eh-frame.c: Likewise.
       * bfd/peicode.h: Likewise.
       * gas/symbols.c: Print bfd_hostptr_t to file via fprintf_vma.
       * gas/write.c: Likewise.
       * gprof/cg_print.c: Force cast of sizeof to be a long.
       * gprof/hist.c: Likewise.
       * include/splay-tree.h: New type libi_uhostptr_t needed for
       w64 when a long is not wide enought for a pointer for
       splay_tree_key and splay_tree_value..
       (splay_tree_key, splay_tree_value): As above, see comment.
       * include/coff/internal.h:  Replace host ptr type assuming "long"
       to bfd_hostptr_t type.
       * libiberty/strerror.c: Undefine sys_nerr and sys_errlist if
       allready defined in front by runtime headers.

Regards,
 i.A. Kai Tietz

Please correct me if I am wrong, but it appears that this was never committed. Is it going to be?


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