[power7-meissner] Fixup some issues with V2DI mode, add a minor optimization

David Edelsohn dje.gcc@gmail.com
Sun Jul 26 20:40:00 GMT 2009


[gcc]
2009-07-24  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
	Delete test for long long type and key off of using VSX memory
	instructions instead of the VSX arithmetic unit to allow V2DI
	builtins.

	* config/rs6000/rs6000.c (rs6000_expand_vector_init): Don't move
	splat of V2DI/V2DF operands to be in a register.
	(rs6000_handle_altivec_attribute): Allow long long vectors in VSX
	mode.  Move all VSX tests under one if.

	* config/rs6000/vsx.md (vsx_extract_<mode>): Use 'd' constraint to
	load double, not 'f'.
	(vsx_extract_<mode>_zero): Add optimization for extracting
	constant elements memory.
	(vsx_extract_<mode>_one): Ditto.

	* config/rs6000/rs6000.md (btruncdf2_fpr): Be consistant with
	other names in using _fpr suffix, not _fprs.
	(ceildf2_fpr): Ditto.
	(floordf2_fpr): Ditto.
	(movdf_hardfloat32): Eliminate extra spaces in set_attr.
	(movdf_hardfloat64_mfpgpr): Ditto.
	(movdf_hardfloat64): Ditto.

[gcc/testsuite]
2009-07-24  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* gcc.target/powerpc/vsx-builtin-7.c: New file, to test various
	combinations of vector init, extract, and splat.

This additional patch is okay.

Thanks, David



More information about the Gcc-patches mailing list