This is the mail archive of the gcc-patches@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]

[PATCH, powerpc] Add -mmass to use XL's MASS vectorization library


This patch was cloned from the i386 -mveclibabi=<xxx> support, and it adds a
new switch (-mmass) that says to vectorize various mathematical functions (sin,
cos, etc.) on power7 systems.  This patch greatly speeds up 3 of the Spec 2006
floating point benchmarks (tonto, wrf, GemsFDTD) that heavily use the math
functions.  I have done bootstraps on my power systems, and comparison tests
and there were no regressions.  Is it ok to install in the tree?

[gcc]
2010-08-18  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* config/rs6000/rs6000.opt (-mmass): New option to enable the
	compiler to autovectorize mathmetical functions for power7 using
	the Mathematical Acceleration Subsystem library.

	* config/rs6000/rs6000.c (rs6000_builtin_vectorized_libmass): New
	function to handle auto vectorizing math functions that are in the
	MASS library.
	(rs6000_builtin_vectorized_function): Call it.

	* doc/invoke.texi (RS/6000 and PowerPC Options): Document -mmass.

[gcc/testsuite]
2010-08-18  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* gcc.target/powerpc/vsx-mass-1.c: New file, test -mmass.

-- 
Michael Meissner, IBM
5 Technology Place Drive, M/S 2757, Westford, MA 01886-3141, USA
meissner@linux.vnet.ibm.com

Attachment: gcc-power7.patch150b
Description: Text document


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