Approved in http://gcc.gnu.org/ml/gcc-patches/2008-12/msg00733.html.
authorbje <bje@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 28 Mar 2009 23:21:02 +0000 (23:21 +0000)
committerbje <bje@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 28 Mar 2009 23:21:02 +0000 (23:21 +0000)
* config/i386/i386.c (enum ix86_builtins): Add IX86_BUILTIN_HUGE_VALQ.
(ix86_init_builtins): Add built-in function __builtin_huge_valq.
(ix86_expand_builtin): Handle IX86_BUILTIN_HUGE_VALQ.
* doc/extend.texi (X86 Built-in Functions): Add index entries for
__builtin_infq and __builtin_huge_valq.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145212 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/i386/i386.c
gcc/doc/extend.texi

index 434ddd7..ca76ef6 100644 (file)
@@ -1,3 +1,11 @@
+2009-03-29  Ben Elliston  <bje@au.ibm.com>
+
+       * config/i386/i386.c (enum ix86_builtins): Add IX86_BUILTIN_HUGE_VALQ.
+       (ix86_init_builtins): Add built-in function __builtin_huge_valq.
+       (ix86_expand_builtin): Handle IX86_BUILTIN_HUGE_VALQ.
+       * doc/extend.texi (X86 Built-in Functions): Add index entries for
+       __builtin_infq and __builtin_huge_valq.
+
 2009-03-28  Anatoly Sokolov  <aesok@post.ru>
 
        * config/avr/avr.c (avr_mcu_t): Add atmega8c1, atmega16c1 and
index 5f36ec3..1cbb795 100644 (file)
@@ -20225,6 +20225,7 @@ enum ix86_builtins
 
   /* TFmode support builtins.  */
   IX86_BUILTIN_INFQ,
+  IX86_BUILTIN_HUGE_VALQ,
   IX86_BUILTIN_FABSQ,
   IX86_BUILTIN_COPYSIGNQ,
 
@@ -23393,6 +23394,11 @@ ix86_init_builtins (void)
                               NULL, NULL_TREE);
   ix86_builtins[(int) IX86_BUILTIN_INFQ] = decl;
 
+  decl = add_builtin_function ("__builtin_huge_valq", ftype,
+                              IX86_BUILTIN_HUGE_VALQ, BUILT_IN_MD,
+                              NULL, NULL_TREE);
+  ix86_builtins[(int) IX86_BUILTIN_HUGE_VALQ] = decl;
+
   /* We will expand them to normal call if SSE2 isn't available since
      they are used by libgcc. */
   ftype = build_function_type_list (float128_type_node,
@@ -24848,6 +24854,7 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget ATTRIBUTE_UNUSED,
       return ix86_expand_vec_set_builtin (exp);
 
     case IX86_BUILTIN_INFQ:
+    case IX86_BUILTIN_HUGE_VALQ:
       {
        REAL_VALUE_TYPE inf;
        rtx tmp;
index ad17a37..0e9d739 100644 (file)
@@ -7780,6 +7780,11 @@ The following floating point built-in functions are made available in the
 @table @code
 @item __float128 __builtin_infq (void)
 Similar to @code{__builtin_inf}, except the return type is @code{__float128}.
+@findex __builtin_infq
+
+@item __float128 __builtin_huge_valq (void)
+Similar to @code{__builtin_huge_val}, except the return type is @code{__float128}.
+@findex __builtin_huge_valq
 @end table
 
 The following built-in functions are made available by @option{-mmmx}.