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]

Inline round for IA64


Hi, all

Gfortran translates the Fortran 95 intrinsic DNINT to 
round operation with double precision type argument 
and return value. Inline round operation will speed up 
the SPEC CFP2000 benchmark 189.lucas which contains 
function calls of intrinsic DNINT from 706 (SPEC 
ratio) to 783 on IA64 1GHz system. 

I have implemented the double precison version of 
inline round. If it is worth doing, I can go on to 
finish the other precision mode versions.
 
2005-04-07  Canqun Yang  <canqun@nudt.edu.cn>

	* config/ia64/ia64.md (UNSPEC_ROUND): New 
constant.
	(floatxfxf2, fix_truncxf2): New instruction 
patterns.
	(rounddf2): New expander.
	(rounddf2_internal): New 
define_insn_and_split implementing inline
	calculation of DFmode round.
	* config/ia64/ia64.opt (-minline-round, -mno-
inline-round): Add new
	IA64 options.
	* doc/invoke.texi: Ditto.


Canqun Yang
Creative Compiler Research Group.
National University of Defense Technology, China.

Attachment: ia64.md.diff
Description: Binary data

Attachment: invoke.texi.diff
Description: Binary data


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