[PATCH 0/6] More vector permutation work

Iain Sandoe developer@sandoe-acoustics.co.uk
Wed Oct 26 12:27:00 GMT 2011


Hi Richard,

On 25 Oct 2011, at 01:17, Richard Henderson wrote:

> The Idea with this patch set is to re-arrange vector permutation
> so that it can be used to implement other patterns automatically.
>
> In particular, Altivec, SPU currently have (and Sparc VIS would need)
> a large amount of boilerplate code that transforms several higher
> level tree codes into vector permutation inside the backend.  This
> seems a bit unnecessary.
>
> It's arguable that we could simply make VEC_PERM_EXPR the only code
> that gets generated at the vectorizer level, and drop some of these
> other patterns entirely.  I'm not 100% sure we should go that far,
> but even if we did, I still think this is a good cleanup.
>
> Bootstrapped and tested on x86_64-linux only.  I've only cross-tested
> the ppc/spu patches.

unfortunately, the series breaks bootstrap for powerpc-darwin9:

http://gcc.gnu.org/ml/gcc-regression/2011-10/msg00539.html

the failure is in building libgfortran:

libtool: compile:  /GCC/gcc-4-7-trunk-build/./gcc/xgcc -B/GCC/gcc-4-7- 
trunk-build/./gcc/ -B/GCC/gcc-4-7-install/powerpc-apple-darwin9/bin/ - 
B/GCC/gcc-4-7-install/powerpc-apple-darwin9/lib/ -isystem /GCC/gcc-4-7- 
install/powerpc-apple-darwin9/include -isystem /GCC/gcc-4-7-install/ 
powerpc-apple-darwin9/sys-include -DHAVE_CONFIG_H -I. -I/GCC/gcc-live- 
trunk/libgfortran -iquote/GCC/gcc-live-trunk/libgfortran/io -I/GCC/gcc- 
live-trunk/libgfortran/../gcc -I/GCC/gcc-live-trunk/libgfortran/../gcc/ 
config -I../.././gcc -std=gnu99 -Wall -Wstrict-prototypes -Wmissing- 
prototypes -Wold-style-definition -Wextra -Wwrite-strings -fcx-fortran- 
rules -ffunction-sections -fdata-sections -ftree-vectorize -funroll- 
loops -g -O2 -MT matmul_c4.lo -MD -MP -MF .deps/matmul_c4.Tpo -c /GCC/ 
gcc-live-trunk/libgfortran/generated/matmul_c4.c  -fno-common -DPIC - 
o .libs/matmul_c4.o
/GCC/gcc-live-trunk/libgfortran/generated/matmul_c4.c: In function  
‘matmul_c4’:
/GCC/gcc-live-trunk/libgfortran/generated/matmul_c4.c:284:25: internal  
compiler error: in expand_vec_perm, at optabs.c:6998
Please submit a full bug report,
with preprocessed source if appropriate.

it is reproducible with a stage-1 compiler - so presumably off a cross  
too.

cheers
Iain



More information about the Gcc-patches mailing list