- 17 Jan, 2011 28 commits
-
-
A standalone __builtin_rx_sat isn't implementable due to needing to keep the flags live before reload. Instead provide a saturating add pattern, which hopefully will be pattern-matched by high-level optimizations. From-SVN: r168928
Richard Henderson committed -
The patterns represented with ashift 1 canonically need to have the ashift as the first operand of the logical operation. Leave insv represented as a zero_extract store. Implement a variable store to a 1 bit field as tst+bmne. Implement a variable store of a condition into a 1 bit field with bmcc. From-SVN: r168927
Richard Henderson committed -
From-SVN: r168926
Richard Henderson committed -
SET should always have VOIDmode. A number of places used SImode or QImode for the mode of the SET rtx itself. From-SVN: r168925
Richard Henderson committed -
All arithmetic should only clobber the flags by default; setting the flags to a useful value should be done by a separate pattern. From-SVN: r168924
Richard Henderson committed -
From-SVN: r168923
Richard Henderson committed -
This was delayed until all compare+operate patterns were converted. From-SVN: r168922
Richard Henderson committed -
This will allow elimination of the compare. From-SVN: r168921
Richard Henderson committed -
This will allow elimination of the compare. From-SVN: r168920
Richard Henderson committed -
Use match_operator, not code_iterators. Use a new helper function, rx_split_cbranch. Get the modes right on the comparisons. Distinguish fp comparisons with CC_Fmode. From-SVN: r168919
Richard Henderson committed -
To be replaced by the generic compare_elim pass, but we need to disable this before fiddling with the arrangement of the arithmetic instructions, as required by the generic pass. From-SVN: r168916
Richard Henderson committed -
Rewrite to look at comparison codes, not arithmetic codes. From-SVN: r168915
Richard Henderson committed -
2011-01-17 Paolo Carlini <paolo.carlini@oracle.com> * include/bits/stl_queue.h (queue<>::swap, priority_queue<>::swap): Implement DR 1198. * include/bits/stl_stack.h (stack<>::swap): Likewise. From-SVN: r168914
Paolo Carlini committed -
From-SVN: r168911
Rainer Orth committed -
From-SVN: r168910
Richard Henderson committed -
2011-01-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * gcc.dg/guality/pr36728-1.c: Replace XFAIL for s390(x) with a target check. * gcc.dg/guality/pr36728-2.c: Likewise. From-SVN: r168908
Andreas Krebbel committed -
2011-01-17 Richard Guenther <rguenther@suse.de> PR tree-optimization/47313 * tree-inline.c (tree_function_versioning): Move DECL_RESULT handling before copying the body. Properly deal with by-reference result in SSA form. * g++.dg/torture/pr47313.C: New testcase. From-SVN: r168907
Richard Guenther committed -
From-SVN: r168902
Rainer Orth committed -
* config/sparc/sparc.c (sparc_sr_alias_set): Don't define. (struct_value_alias_set): Don't define. (sparc_option_override): Don't set sparc_sr_alias_set and struct_value_alias_set. (save_or_restore_regs): Use gen_frame_mem rather than calling set_mem_alias_set. (sparc_struct_value_rtx): Likewise. From-SVN: r168901
Ian Lance Taylor committed -
gcc/ 2011-01-17 H.J. Lu <hongjiu.lu@intel.com> PR target/47318 * config/i386/avxintrin.h (_mm_maskload_pd): Change mask to __m128i. (_mm_maskstore_pd): Likewise. (_mm_maskload_ps): Likewise. (_mm_maskstore_ps): Likewise. (_mm256_maskload_pd): Change mask to __m256i. (_mm256_maskstore_pd): Likewise. (_mm256_maskload_ps): Likewise. (_mm256_maskstore_ps): Likewise. * config/i386/i386-builtin-types.def: Updated. (ix86_expand_special_args_builtin): Likewise. * config/i386/i386.c (bdesc_special_args): Update __builtin_ia32_maskloadpd, __builtin_ia32_maskloadps, __builtin_ia32_maskloadpd256, __builtin_ia32_maskloadps256, __builtin_ia32_maskstorepd, __builtin_ia32_maskstoreps, __builtin_ia32_maskstorepd256 and __builtin_ia32_maskstoreps256. * config/i386/sse.md (avx_maskload<ssemodesuffix><avxmodesuffix>): Use <avxpermvecmode> on mask register. (avx_maskstore<ssemodesuffix><avxmodesuffix>): Likewise. gcc/testsuite/ 2011-01-17 H.J. Lu <hongjiu.lu@intel.com> PR target/47318 * gcc.target/i386/avx-vmaskmovpd-1.c: New. * gcc.target/i386/avx-vmaskmovpd-2.c: Likewise. * gcc.target/i386/avx-vmaskmovps-1.c: Likewise. * gcc.target/i386/avx-vmaskmovps-1.c: Likewise. * gcc.target/i386/avx-vmaskmovpd-256-1.c (avx_test): Load mask as __m256i. * gcc.target/i386/avx-vmaskmovpd-256-2.c (avx_test): Likewise. * gcc.target/i386/avx-vmaskmovps-256-1.c (avx_test): Likewise. * gcc.target/i386/avx-vmaskmovps-256-2.c (avx_test): Likewise. From-SVN: r168899
H.J. Lu committed -
PR target/46655 * xcoffout.c (ASM_OUTPUT_LINE): Output line only if positive, and only if <= USHRT_MAX in 32-bit mode. Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com> Co-Authored-By: Michael Haubenwallner <michael.haubenwallner@salomon.at> From-SVN: r168897
Olivier Hainque committed -
2011-01-17 Richard Guenther <rguenther@suse.de> PR tree-optimization/45967 * gcc.dg/torture/pr45967-2.c: New testcase. * gcc.dg/torture/pr45967-3.c: Likewise. From-SVN: r168896
Richard Guenther committed -
2011-01-17 Tobias Burnus <burnus@net-b.de> PR fortran/46817 * quadmath-imp.h: Refer to libquadmath not ot libiberty, bump copyright year and use /**/ instead of // comments. * quadmath.h: Ditto. * quadmath-weak.h: Ditto. * quadmath_io.c: Ditto. From-SVN: r168892
Tobias Burnus committed -
gcc/: * doc/install.texi (Configuration, Specific): Wrap long lines in examples. Allow line wrapping in long options and URLs where beneficial for PDF output. From-SVN: r168889
Ralf Wildenhues committed -
From-SVN: r168888
Janne Blomqvist committed -
re PR libstdc++/47323 (FAIL: 28_regex/08_basic_regex/requirements/constexpr_data.cc (test for excess errors)) 2011-01-16 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/47323 * testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc: Only test wregex when _GLIBCXX_USE_WCHAR_T is defined. From-SVN: r168887
Paolo Carlini committed -
PR testsuite/47325 g++.dg/ext/pr47213.C: Require visibility. From-SVN: r168886
John David Anglin committed -
From-SVN: r168885
GCC Administrator committed
-
- 16 Jan, 2011 12 commits
-
-
gcc/testsuite/ * gcc.dg/fixed-point/composite-type.c: Pass -Wno-unused. * gcc.dg/fixed-point/struct-union.c: Update error messages. From-SVN: r168876
Richard Sandiford committed -
gcc/testsuite/ * gcc.c-torture/execute/20101011-1.c: Skip test for MIPS16 Linux-based targets. From-SVN: r168875
Richard Sandiford committed -
gcc/ * config/mips/mips.c (mips_classify_symbol): Don't return SYMBOL_PC_RELATIVE for nonlocal labels. From-SVN: r168874
Richard Sandiford committed -
2011-01-16 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/47320 * testsuite/18_support/numeric_limits/lowest.cc: Only test wchar_t when _GLIBCXX_USE_WCHAR_T is defined. From-SVN: r168873
Paolo Carlini committed -
PR libfortran/47322 * math/remquoq.c (remquoq): Use uint64_t type instead of u_int64_t. From-SVN: r168872
Jakub Jelinek committed -
re PR libstdc++/47321 (FAIL: 21_strings/basic_string/requirements/typedefs.cc (test for excess errors)) 2011-01-16 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/47321 * testsuite/21_strings/basic_string/requirements/typedefs.cc: Only test std::wstring when _GLIBCXX_USE_WCHAR_T is defined. From-SVN: r168871
Paolo Carlini committed -
From-SVN: r168858
Gerald Pfeifer committed -
2011-01-15 Tobias Burnus <burnus@net-b.de> * gfortran.texi: Update Fortran 2003 Status section. PR fortran/47177 * invoke.texi: Add missing "-E" to the -dM example. From-SVN: r168857
Tobias Burnus committed -
PR fortran/46625 * quadmath.map (QUADMATH_1.0): Remove quadmath_strtopQ and quadmath_dtoaq. Add strtoflt128 and quadmath_flt128tostr. * quadmath_weak.h (quadmath_strtopQ, quadmath_dtoaq): Remove. (strtoflt128, quadmath_flt128tostr): Add. * gdtoa/strtopQ.c (quadmath_strtopQ): Rename to... (strtoflt128): ... this. Return __float128, instead of writing to memory pointed by last argument. * quadmath.h: Use C style comments instead of C++ style. (quadmath_strtopQ, quadmath_dtoaq): Remove prototypes. (strtoflt128, quadmath_flt128tostr): Add prototypes. * libquadmath.texi (quadmath_dtoaq): Rename to quadmath_flt128tostr. (quadmath_strtopQ): Rename to strtoflt128. Adjust prototype, adjust examples. * quadmath_io.c (quadmath_dtoaq): Rename to... (quadmath_flt128tostr): ... this. libgfortran/ * io/write_float.def (DTOAQ): Use quadmath_flt128tostr instead of quadmath_dtoa. * io/transfer128.c (tmp1, tmp2): New variables, bring in strtoflt128 and quadmath_flt128tostr. (transfer_real128, transfer_real128_write, transfer_complex128, transfer_complex128_write): Remove tmp1/tmp2 variables. * io/read.c (convert_real): Use strtoflt128 instead of quadmath_strtopQ, adjust for the changed arguments and return value. From-SVN: r168856
Jakub Jelinek committed -
* quadmath.h (__quadmath_throw, __quadmath_nth): Define. Use it for all prototypes. From-SVN: r168855
Jakub Jelinek committed -
PR fortran/46416 * quadmath.h (cbrtq, finiteq, isnanq, signbitq, sqrtq): Remove const from prototype argument. (cimagq, conjq, cprojq, crealq, fdimq, fmaxq, fminq, ilogbq, llrintq, log2q, lrintq, nearbyintq, remquoq): New prototypes. (__quadmath_extern_inline): Define. (cimagq, conjq, crealq): New inlines. * Makefile.am (libquadmath_la_SOURCES): Add math/cimagq.c, math/conjq.c, math/cprojq.c, math/crealq.c, math/fdimq.c, math/fmaxq.c, math/fminq.c, math/ilogbq.c, math/llrintq.c, math/log2q.c, math/lrintq.c, math/nearbyintq.c and math/remquoq.c. * Makefile.in: Regenerated. * quadmath_weak.h (cimagq, conjq, cprojq, crealq, fdimq, fmaxq, fminq, ilogbq, llrintq, log2q, lrintq, nearbyintq, remquoq): Add. * quadmath-imp.h (__LITTLE_ENDIAN__): Don't define. (ieee854_float128): Use __BYTE_ORDER == __ORDER_BIG_ENDIAN__ tests instead of __BIG_ENDIAN__. * quadmath.map (QUADMATH_1.0): Add cimagq, conjq, cprojq, crealq, fdimq, fmaxq, fminq, ilogbq, llrintq, log2q, lrintq, nearbyintq and remquoq. * libquadmath.texi (cimagq, conjq, cprojq, crealq, fdimq, fmaxq, fminq, ilogbq, llrintq, log2q, lrintq, nearbyintq, remquoq): Add. * math/cprojq.c: New file. * math/ilogbq.c: New file. * math/fminq.c: New file. * math/llrintq.c: New file. * math/log2q.c: New file. * math/lrintq.c: New file. * math/crealq.c: New file. * math/nearbyintq.c: New file. * math/fmaxq.c: New file. * math/conjq.c: New file. * math/remquoq.c: New file. * math/cimagq.c: New file. * math/fdimq.c: New file. * math/ldexpq.c: Include errno.h. Set errno to ERANGE if needed. From-SVN: r168854
Jakub Jelinek committed -
PR fortran/46416 * quadmath.h (cacosq, cacoshq, casinq, casinhq, catanq, catanhq): New prototypes. (M_Eq, M_LOG2Eq, M_LOG10Eq, M_LN2q, M_LN10q, M_PIq, M_PI_2q, M_PI_4q, M_1_PIq, M_2_PIq, M_2_SQRTPIq, M_SQRT2q, M_SQRT1_2q): Define. * quadmath_weak.h (cacosq, cacoshq, casinq, casinhq, catanq, catanhq): Add. * quadmath-imp.h (fpclassifyq, QUADFP_NAN, QUADFP_INFINITE, QUADFP_ZERO, QUADFP_SUBNORMAL, QUADFP_NORMAL): Define. * quadmath.map (QUADMATH_1.0): Add cacosq, cacoshq, casinq, casinhq, catanq and catanhq. * Makefile.am (libquadmath_la_SOURCES): Add math/cacosq.c, math/cacoshq.c, math/casinq.c, math/casinhq.c, math/catanq.c and math/catanhq.c. * Makefile.in: Regenerated. * libquadmath.texi (cacosq, cacoshq, casinq, casinhq, catanq, catanhq): Add. * math/cacoshq.c: New file. * math/cacosq.c: New file. * math/catanq.c: New file. * math/catanhq.c: New file. * math/casinq.c: New file. * math/casinhq.c: New file. * math/hypotq.c (hypotq): Use Q suffix instead of L. * math/atan2q.c (tiny, pi_o_4, pi_o_2, pi, pi_lo, atan2q): Likewise. * math/cosq.c (cosq): Likewise. From-SVN: r168853
Jakub Jelinek committed
-