[PATCH #2] Add PowerPC ISA 3.0 word splat and byte immediate splat support

Michael Meissner meissner@linux.vnet.ibm.com
Tue May 17 23:09:00 GMT 2016


On Tue, May 17, 2016 at 06:45:49PM -0400, Michael Meissner wrote:
> As I mentioned in the last message, my previous patch had some problems that
> showed up on big endian systems, using RELOAD (one of the tests that failed was
> the vshuf-v32qi.c test in the testsuite).  Little endian and IRA did compiled
> the test fine.  This patch fixes the problem.  I went over the alternatives in
> the vsx_mov<mode>_{32bit,64bit} patterns, and I removed the '*' constraints,
> and checked all of the other constraints.
> 
> Just to be sure, I build the Spec 2006 benchmark with this patch with the
> following variants, and all built fine (using svn id 236136 as the base
> revision).
> 
> 	32-bit power7 big endian, reload
> 	32-bit power7 big endian, ira
> 	64-bit power7 big endian, reload
> 	64-bit power7 big endian, ira
> 	64-bit power8 little endian, reload
> 	64-bit power8 little endian, ira
> 
> I also built the power8 little endian versions with subversion id 236325, and
> all built fine.  I am having trouble with 236325 on my big endian power7
> system, but it fails with both the straight trunk, and with these patches, so
> it is something else.

FWIW, the problem after subversion id 236136 shows up when the trunk compiler
is built with the host compiler (4.3.4).  I build compilers to build Spec using
the configuration option --with-advance-toolchain=at7.0 so that the libraries
and include files from the Advance Toolchain are used instead of the host
libraries and include files.  The --with-advance-toolchain=at7.0 does not work
as well with a bootstrap compiler, so I tend to build a non-bootstrap compiler
to build spec objects with.

If I build it with the Advance Toolchain (AT 7.0), or presumably with a
bootstrap compiler from trunk, it builds the integer portion of Spec 2006 for
both reload and lra without error (building with the host compiler, 9 of the 12
SpecInt benchmarks would fail).

-- 
Michael Meissner, IBM
IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA
email: meissner@linux.vnet.ibm.com, phone: +1 (978) 899-4797



More information about the Gcc-patches mailing list