[PATCH 0/2] Move xx* builtins to vsx.md. I noticed that the xx built-in functions (xxspltiw, xxspltidp, xxsplti32dx, xxeval, xxblend, and xxpermx) were all defined in altivec.md. However, since the XX instructions can take both traditional floating point and Altivec registers, these built-in functions should be in vsx.md.
The first patch just moves the insns from altivec.md to vsx.md. The second patch fixes a predicate error that I noticed when was doing the error. I also moved the VM3 mode iterator and VM3_char mode attribute from altivec.md to vsx.md, since the only use of these were for the XXBLEND insns. I have bootstraped this on LE power9 and BE power8 systems. There were no regressions. Can I check this into the trunk? It does not need to be backported to GCC 11 unless we want to back port the support for XXSPLTIW, XXSPLTIDP, and XXSPLTI32DX instructions that will be later patches. -- Michael Meissner, IBM IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA email: meiss...@linux.ibm.com, phone: +1 (978) 899-4797