r279155 - in /branches/ibm/pcrel-trunk/gcc: Cha...

meissner@gcc.gnu.org meissner@gcc.gnu.org
Tue Dec 10 06:36:00 GMT 2019


Author: meissner
Date: Tue Dec 10 06:36:48 2019
New Revision: 279155

URL: https://gcc.gnu.org/viewcvs?rev=279155&root=gcc&view=rev
Log:
Update vector_extract for prefixed addresses.

2019-12-10  Michael Meissner  <meissner@linux.ibm.com>

	* config/rs6000/constraint.md (em constraint): New constraint for
	non-prefixed memory.
	* config/rs6000/rs6000-protos.h (rs6000_split_vec_extract_var):
	Adjust signature.
	* config/rs6000/rs6000.c (rs6000_reg_to_addr_mask): New helper
	function.
	(rs6000_adjust_vec_address): Add support for prefixed addresses
	that use large numeric offsets.  Move a PC-relative address into a
	temporary before calculating the final address.
	(rs6000_split_vec_extract_var): Add a new temporary to load
	PC-relative addresses into.
	* config/rs6000/vsx.md (vsx_extract_<mode>_var, VSX_D iterator):
	Add support for vector extracts using prefixed addresses needing
	an extra temporary base register.
	(vsx_extract_v4sf_var): Add support for vector extracts using
	prefixed addresses needing an extra temporary base register.
	(vsx_extract_<mode>_var, VSX_EXTRACT_I iterator): Add support for
	vector extracts using prefixed addresses needing an extra
	temporary base register.
	(vsx_extract_<mode>_<VS_scalar>mode_var): Add support for vector
	extracts using prefixed addresses needing an extra temporary base
	register.
	* doc/md.texi (PowerPC constraints): Document the em constraint.


Modified:
    branches/ibm/pcrel-trunk/gcc/ChangeLog.meissner
    branches/ibm/pcrel-trunk/gcc/config/rs6000/constraints.md
    branches/ibm/pcrel-trunk/gcc/config/rs6000/rs6000-protos.h
    branches/ibm/pcrel-trunk/gcc/config/rs6000/rs6000.c
    branches/ibm/pcrel-trunk/gcc/config/rs6000/vsx.md
    branches/ibm/pcrel-trunk/gcc/doc/md.texi



More information about the Gcc-cvs mailing list