]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR middle-end/50083 (All 32-bit fortran tests fail on 32-bit Solaris)
authorUros Bizjak <uros@gcc.gnu.org>
Fri, 26 Aug 2011 16:10:45 +0000 (18:10 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Fri, 26 Aug 2011 16:10:45 +0000 (18:10 +0200)
PR middle-end/50083
* convert.c (convert_to_integer) <BUIT_IN_ROUND{,F,L}>: Convert
only when TARGET_C99_FUNCTIONS.
<BUILT_IN_NEARBYINT{,F,L}>: Ditto.
<BUILT_IN_RINT{,F,L}>: Ditto.

From-SVN: r178119

gcc/ChangeLog
gcc/convert.c

index 1ec7edc0d9902e6a7b580ef606f8f1b720a2b112..a067e2eceae3f945809bf0f6f1515e1e966fdd51 100644 (file)
@@ -1,3 +1,11 @@
+2011-08-26  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR middle-end/50083
+       * convert.c (convert_to_integer) <BUIT_IN_ROUND{,F,L}>: Convert
+       only when TARGET_C99_FUNCTIONS.
+       <BUILT_IN_NEARBYINT{,F,L}>: Ditto.
+       <BUILT_IN_RINT{,F,L}>: Ditto.
+
 2011-08-26  Michael Matz  <matz@suse.de>
            Jakub Jelinek  <jakub@redhat.com>
 
 
 2011-08-26  Jiangning Liu  <jiangning.liu@arm.com>
 
-       * config/arm/arm.md (*ior_scc_scc): Enable for Thumb2 as well.
-       (*ior_scc_scc_cmp): Likewise
-       (*and_scc_scc): Likewise.
-       (*and_scc_scc_cmp): Likewise.
-       (*and_scc_scc_nodom): Likewise.
-       (*cmp_ite0, *cmp_ite1, *cmp_and, *cmp_ior): Handle Thumb2.
+       * config/arm/arm.md (*ior_scc_scc): Enable for Thumb2 as well.
+       (*ior_scc_scc_cmp): Likewise
+       (*and_scc_scc): Likewise.
+       (*and_scc_scc_cmp): Likewise.
+       (*and_scc_scc_nodom): Likewise.
+       (*cmp_ite0, *cmp_ite1, *cmp_and, *cmp_ior): Handle Thumb2.
 
 2011-08-26  Jakub Jelinek  <jakub@redhat.com>
 
 
 2011-08-26  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
 
-       * config/arm/cortex-a9.md ("cortex_a9_mult_long"): New.
-       ("cortex_a9_multiply_long"): New and use above.  Handle all
+       * config/arm/cortex-a9.md ("cortex_a9_mult_long"): New.
+       ("cortex_a9_multiply_long"): New and use above.  Handle all
        long multiply cases.
-       ("cortex_a9_multiply"): Handle smmul and smmulr.
-       ("cortex_a9_mac"): Handle smmla.
+       ("cortex_a9_multiply"): Handle smmul and smmulr.
+       ("cortex_a9_mac"): Handle smmla.
 
 2011-08-25  Richard Henderson  <rth@redhat.com>
 
 
 2011-08-22  H.J. Lu  <hongjiu.lu@intel.com>
 
-       * acinclude.m4 (gcc_AC_INITFINI_ARRAY): Error if __ELF__ isn't
-       defined.
+       * acinclude.m4 (gcc_AC_INITFINI_ARRAY): Error if __ELF__ isn't defined.
        * configure: Regenerated.
 
 2011-08-22  Jakub Jelinek  <jakub@redhat.com>
index d72dda8fd826aaf48c9886e436c39a1980cdcaad..a647193ca949e8f425984eefe6e0b695ce79e1e9 100644 (file)
@@ -469,6 +469,9 @@ convert_to_integer (tree type, tree expr)
          break;
 
        CASE_FLT_FN (BUILT_IN_ROUND):
+         /* Only convert in ISO C99 mode.  */
+         if (!TARGET_C99_FUNCTIONS)
+           break;
          if (outprec < TYPE_PRECISION (integer_type_node)
              || (outprec == TYPE_PRECISION (integer_type_node)
                  && !TYPE_UNSIGNED (type)))
@@ -487,11 +490,14 @@ convert_to_integer (tree type, tree expr)
            break;
          /* ... Fall through ...  */
        CASE_FLT_FN (BUILT_IN_RINT):
+         /* Only convert in ISO C99 mode.  */
+         if (!TARGET_C99_FUNCTIONS)
+           break;
          if (outprec < TYPE_PRECISION (integer_type_node)
              || (outprec == TYPE_PRECISION (integer_type_node)
                  && !TYPE_UNSIGNED (type)))
            fn = mathfn_built_in (s_intype, BUILT_IN_IRINT);
-         else if (outprec < TYPE_PRECISION (long_integer_type_node)
+         else if (outprec == TYPE_PRECISION (long_integer_type_node)
                   && !TYPE_UNSIGNED (type))
            fn = mathfn_built_in (s_intype, BUILT_IN_LRINT);
          else if (outprec == TYPE_PRECISION (long_long_integer_type_node)