This is the mail archive of the gcc-cvs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Author: meissner
Date: Wed Sep 18 00:23:35 2019
New Revision: 275834

URL: https://gcc.gnu.org/viewcvs?rev=275834&root=gcc&view=rev
Log:
Fix bug with variable vector extract with pc-rel address.

2019-09-17  Michael Meissner  <meissner@linux.ibm.com>

	* config/rs6000/constraints.md (em constraint): New constraint for
	non pc-relative memory.
	(eM constraint): New constraint for local pc-relative memory.
	* config/rs6000/predicates.md (pcrel_local_mem_operand): New
	predicate to match local pc-relative references.
	(non_pcrel_mem_operand): New predicate to match non pc-relative
	memory.
	* config/rs6000/rs6000-protos.h (rs6000_split_vec_extract_var):
	Adjust calling signature.
	* config/rs6000/rs6000.c (rs6000_split_vec_extract_var): Fix
	problem with doing a variable vector extract where the vector's
	address was a pc-relative address by adding a second scratch
	register, just for that case.
	* config/rs6000/vsx.md (vsx_extract_<mode>_var, VSX_D iterator):
	Add second scratch register if the vector address is pc-relative.
	(vsx_extract_v4sf_var): Add second scratch register if the vector
	address is pc-relative.
	(vsx_extract_<mode>_var, VSX_EXTRACT_I iterator): Add second
	scratch register if the vector address is pc-relative.
	(vsx_extract_<mode>_<VS_scalar>mode_var): Add second scratch
	register if the vector address is pc-relative.
	* doc/md.texi (PowerPC constraints): Document the em and eM
	constraints.


Modified:
    branches/ibm/pcrel-trunk/gcc/ChangeLog.meissner
    branches/ibm/pcrel-trunk/gcc/config/rs6000/constraints.md
    branches/ibm/pcrel-trunk/gcc/config/rs6000/predicates.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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]