Re: powerpc64le-linux support

2013-05-05 Thread Alan Modra
On Sun, May 05, 2013 at 04:09:30PM +0930, Alan Modra wrote: > * config/rs6000/sysv4.h (ENDIAN_SELECT): Define, extracted from > (ASM_SPEC): ..here. Emit DEFAULT_ASM_ENDIAN too. > (DEFAULT_ASM_ENDIAN): Define. > (CC1_SPEC, LINK_TARGET_SPEC): Use ENDIAN_SELECT. > * conf

Re: powerpc64le-linux support

2013-05-05 Thread Joseph S. Myers
On Sun, 5 May 2013, David Edelsohn wrote: > The -mcall-* options are more about PPC eABI. Where the options are about changing the function-calling ABI, I don't think they cause problems. It's the way the options make spec handling different from other architectures that's problematic, and the

Re: powerpc64le-linux support

2013-05-05 Thread David Edelsohn
On Sun, May 5, 2013 at 10:21 AM, Joseph S. Myers wrote: > On Sun, 5 May 2013, Alan Modra wrote: > >> Something to consider for the future is making more of the -mcall >> options endian agnostic, like -mcall-sysv. Tested with a number of >> powerpc ELF builds. > > I'd like to suggest removing thos

Re: powerpc64le-linux support

2013-05-05 Thread David Edelsohn
On Sun, May 5, 2013 at 12:35 AM, Alan Modra wrote: > This fixes a couple more little-endian bugs. bswapdi stores when > !TARGET_LDBRX were being split to two bswapsi but written to the wrong > words because we word swapped twice. ashrdi3 resulted in a libcall. > > I think I have ashrdi3_no_power

Re: powerpc64le-linux support

2013-05-05 Thread Joseph S. Myers
On Sun, 5 May 2013, Alan Modra wrote: > Something to consider for the future is making more of the -mcall > options endian agnostic, like -mcall-sysv. Tested with a number of > powerpc ELF builds. I'd like to suggest removing those -mcall-* options (as far as they affect specs, anyway). No oth

Re: powerpc64le-linux support

2013-05-04 Thread Alan Modra
This tidies endian selection. Prior to this change, if you gave a little-endian gcc the -mcall-aixdesc option, gcc would operate big-endian but the assembler in little-endian. Which was confusing to say the least. The sysv4.h changes below don't actually make any substantive changes in the spec

Re: powerpc64le-linux support

2013-05-04 Thread Alan Modra
This fixes a couple more little-endian bugs. bswapdi stores when !TARGET_LDBRX were being split to two bswapsi but written to the wrong words because we word swapped twice. ashrdi3 resulted in a libcall. I think I have ashrdi3_no_power correct. For LE, the first reg of a register pair is the lo

Re: powerpc64le-linux support

2013-04-24 Thread David Edelsohn
On Wed, Apr 24, 2013 at 6:47 AM, Alan Modra wrote: > This is a first pass at getting powerpc64 little-endian support into > shape. There are no doubt more bugs lurking, but this lets me build > a little-endian C compiler and libgcc to start the little-endian > bootstrap process. Bootstrapped and

powerpc64le-linux support

2013-04-24 Thread Alan Modra
This is a first pass at getting powerpc64 little-endian support into shape. There are no doubt more bugs lurking, but this lets me build a little-endian C compiler and libgcc to start the little-endian bootstrap process. Bootstrapped and regression tested powerpc64-linux to ensure this doesn't br