From bb7f04236c6c8c1f248f27eb86d9eb486a93c64b Mon Sep 17 00:00:00 2001 From: Richard Guenther Date: Wed, 25 Oct 2006 13:01:14 +0000 Subject: optabs.h (enum optab_index): Remove OTI_lrint. 2006-10-25 Richard Guenther * optabs.h (enum optab_index): Remove OTI_lrint. (enum convert_optab_index): Add COI_lrint. (lrint_optab): Adjust. (expand_sfix_optab): Declare. * optabs.c (expand_sfix_optab): New function. (init_optabs): Init lrint_optab as conversion optab. * genopinit.c (lrint_optab): Change to a conversion optab. * builtins.c (expand_builtin_int_roundingfn_2): Adjust to expansion via conversion optab. * config/i386/i386.md (*fistdi2_1): Remove flag_unsafe_math_optimizations guard. (fistdi2, fistdi2_with_temp, *fist2_1, fist2, fist2_with_temp): Likewise. (lrint2): Split into... (lrintxf2): ... x87 part (lrintdi2, lrintsi2): ... and SSE parts. * config/i386/sse.md (sse_cvtss2si_2, sse_cvtss2_siq_2, sse2_cvtsd2si_2, sse2_cvtsd2siq_2): New insns for UNSPEC_FIX_NOTRUNC matching non-vector float modes. * doc/md.texi (lrintMN2): Document. From-SVN: r118029 --- gcc/doc/md.texi | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'gcc/doc') diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi index a05f9d0..a41391c 100644 --- a/gcc/doc/md.texi +++ b/gcc/doc/md.texi @@ -3702,6 +3702,12 @@ corresponds to the C data type @code{double} and the @code{rintf} built-in function uses the mode which corresponds to the C data type @code{float}. +@cindex @code{lrint@var{m}@var{n}2} +@item @samp{lrint@var{m}@var{n}2} +Convert operand 1 (valid for floating point mode @var{m}) to fixed +point mode @var{n} as a signed number according to the current +rounding mode and store in operand 0 (which has mode @var{n}). + @cindex @code{copysign@var{m}3} instruction pattern @item @samp{copysign@var{m}3} Store a value with the magnitude of operand 1 and the sign of operand -- cgit v1.1