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: Is 64-bit PowerPC disabled on Cygwin Hosts?




On 10/6/2017 12:42 AM, Sebastian Huber wrote:
On 06/10/17 07:23, Alan Modra wrote:

On Fri, Oct 06, 2017 at 07:00:18AM +0200, Sebastian Huber wrote:
On 06/10/17 01:40, Alan Modra wrote:

On Thu, Oct 05, 2017 at 09:28:53AM -0500, Joel Sherrill wrote:
Does anyone have any hints on what could be going on?
If you're expecting to get powerpc64 support with powerpc-*-rtems*,
then you will need to add --enable-64-bit-bfd on a 32-bit host.
Wouldn't it make sense to enable this option by default if you build cross
tools?
No, if you are hosting on a 32-bit machine for a 32-bit target, why
should you pay the penalty of calculating addresses, relocs etc. using
64-bit arithmetic?  Your compiler might not even support long long, or
if it does, the support might have bugs.


For native tools I completely agree with this point of view, but for
cross tools I think the situation is different. If you have a broken
compiler, then you can still use --disable-64-bit-bfd.


I agree. This is a cross toolset and we know that the binutils
must match the gcc and support 64-bits. gcc certainly assumes
it is always there.

In looking farther, it looks like configure.ac is not target
aware but relies on want64 to be set in config.bfd. We always
want64=yes for powerpc*-*-rtems* so this work and trip
the logic in configure.ac. Is this an acceptable solution?

diff --git a/bfd/config.bfd b/bfd/config.bfd
index dc24aab..ab21ec6 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
@@ -1393,6 +1393,11 @@ case "${targ}" in
     targ_defvec=powerpc_elf32_vec
     targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec powerpc_boot_vec"
     targ64_selvecs="powerpc_elf64_vec powerpc_elf64_le_vec"
+    case "${targ}" in
+      powerpc*-*-rtems*)
+        want64=true
+        ;;
+    esac
     ;;
   powerpc-*-kaos*)
     targ_defvec=powerpc_elf32_vec


--joel


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