- 06 Nov, 2018 26 commits
-
-
Implement std::pmr::unsynchronized_pool_resource * config/abi/pre/gnu.ver: Add new symbols. * include/std/memory_resource (std::pmr::__pool_resource): New class. (std::pmr::unsynchronized_pool_resource): New class. * src/c++17/Makefile.am: Add -fimplicit-templates to flags for memory_resource.cc * src/c++17/Makefile.in: Regenerate. * src/c++17/memory_resource.cc (bitset, chunk, big_block): New internal classes. (__pool_resource::_Pool): Define new class. (munge_options, pool_index, select_num_pools): New internal functions. (__pool_resource::__pool_resource, __pool_resource::~__pool_resource) (__pool_resource::allocate, __pool_resource::deallocate) (__pool_resource::_M_alloc_pools): Define member functions. (unsynchronized_pool_resource::unsynchronized_pool_resource) (unsynchronized_pool_resource::~unsynchronized_pool_resource) (unsynchronized_pool_resource::release) (unsynchronized_pool_resource::_M_find_pool) (unsynchronized_pool_resource::do_allocate) (unsynchronized_pool_resource::do_deallocate): Define member functions. * testsuite/20_util/unsynchronized_pool_resource/allocate.cc: New test. * testsuite/20_util/unsynchronized_pool_resource/is_equal.cc: New test. * testsuite/20_util/unsynchronized_pool_resource/options.cc: New test. * testsuite/20_util/unsynchronized_pool_resource/release.cc: New test. From-SVN: r265853
Jonathan Wakely committed -
2018-11-06 Aaron Sawdey <acsawdey@linux.ibm.com> * config/rs6000/rs6000.md (bswap<mode>2): Force address into register if not in indexed or indirect form. (bswap<mode>2_load): Change predicate to indexed_or_indirect_operand. (bswap<mode>2_store): Ditto. From-SVN: r265852
Aaron Sawdey committed -
2018-11-06 John Bytheway <jbytheway@gmail.com> PR libstdc++/87872 * include/debug/safe_sequence.tcc (_Safe_sequence<>::_M_transfer_from_if): Skip transfer to self. From-SVN: r265851
John Bytheway committed -
The speculation tracker insn in my recent patch set for CVE-2017-5753 was missing a mode on the UNSPEC. Although this didn't break the build, it did cause an unnecessary warning from the MD parsing mechanism that I missed at the time. It's a trivial fix, as follows: * config/aarch64/aarch64.md (speculation_tracker): Set the mode for the UNSPEC. From-SVN: r265849
Richard Earnshaw committed -
2018-11-06 Richard Biener <rguenther@suse.de> PR tree-optimization/86850 * vec.h (vec<T, va_heap, vl_ptr>::splice): Check src.length () instead of src.m_vec. From-SVN: r265848
Richard Biener committed -
* tree.c (fld_simplified_type_name): Break out form ... (free_lang_data_in_type): ... here. (fld_type_variant_equal_p): Use it. From-SVN: r265847
Jan Hubicka committed -
* config/default-d.c: Include memmodel.h. * config/sol2-d.c: New file. * config/t-sol2 (sol2-d.o): New rule. * config.gcc <*-*-solaris2*>: Set d_target_objs, target_has_targetdm. From-SVN: r265846
Rainer Orth committed -
* tree.c (fld_type_variant): Also copy alignment; be sure that new variant is equal. From-SVN: r265845
Jan Hubicka committed -
In order to properly fix PR87762, we need to distinguish between instructions which support relative addressing and instructions which don't. We could check whether the existing "type" attribute is equal to "larl", but there are notable exceptions (lrl, for example), and changing them makes scheduling worse on z10. We could also check whether the existing "op_type" attribute is equal to "RIL-b" or "RIL-c". However, adding a new attribute provides more flexibility, since we don't depend idiosyncrasies which might be introduced into PoP in the future. gcc/ChangeLog: 2018-11-06 Ilya Leoshkevich <iii@linux.ibm.com> PR target/87762 * config/s390/s390.md: Add relative_long attribute. From-SVN: r265844
Ilya Leoshkevich committed -
The compiler now generates cdb instead of cdbr for comparison with 0.0, which looks like an improvement to me. gcc/testsuite/ChangeLog: 2018-11-06 Ilya Leoshkevich <iii@linux.ibm.com> * gcc.target/s390/load-and-test-fp-1.c: Accept cdb. From-SVN: r265843
Ilya Leoshkevich committed -
Reviewed-by: Thomas Schwinge <thomas@codesourcery.com> libgomp/ * oacc-mem.c (memcpy_tofrom_device): New function, combined from acc_memcpy_to/from_device functions, now with async parameter. (acc_memcpy_to_device): Modify to use memcpy_tofrom_device. (acc_memcpy_from_device): Likewise. (acc_memcpy_to_device_async): New API function. (acc_memcpy_from_device_async): Likewise. (present_create_copy): Add async parameter and async setting/unsetting. (acc_create): Adjust present_create_copy call. (acc_copyin): Likewise. (acc_present_or_create): Likewise. (acc_present_or_copyin): Likewise. (acc_create_async): New API function. (acc_copyin_async): New API function. (delete_copyout): Add async parameter and async setting/unsetting. (acc_delete): Adjust delete_copyout call. (acc_copyout): Likewise. (acc_delete_async): New API function. (acc_copyout_async): Likewise. (update_dev_host): Add async parameter and async setting/unsetting. (acc_update_device): Adjust update_dev_host call. (acc_update_self): Likewise. (acc_update_device_async): New API function. (acc_update_self_async): Likewise. * openacc.h (acc_copyin_async): Declare new API function. (acc_create_async): Likewise. (acc_copyout_async): Likewise. (acc_delete_async): Likewise. (acc_update_device_async): Likewise. (acc_update_self_async): Likewise. (acc_memcpy_to_device_async): Likewise. (acc_memcpy_from_device_async): Likewise. * openacc_lib.h (acc_copyin_async_32_h): New subroutine. (acc_copyin_async_64_h): New subroutine. (acc_copyin_async_array_h): New subroutine. (acc_create_async_32_h): New subroutine. (acc_create_async_64_h): New subroutine. (acc_create_async_array_h): New subroutine. (acc_copyout_async_32_h): New subroutine. (acc_copyout_async_64_h): New subroutine. (acc_copyout_async_array_h): New subroutine. (acc_delete_async_32_h): New subroutine. (acc_delete_async_64_h): New subroutine. (acc_delete_async_array_h): New subroutine. (acc_update_device_async_32_h): New subroutine. (acc_update_device_async_64_h): New subroutine. (acc_update_device_async_array_h): New subroutine. (acc_update_self_async_32_h): New subroutine. (acc_update_self_async_64_h): New subroutine. (acc_update_self_async_array_h): New subroutine. * openacc.f90 (acc_copyin_async_32_h): New subroutine. (acc_copyin_async_64_h): New subroutine. (acc_copyin_async_array_h): New subroutine. (acc_create_async_32_h): New subroutine. (acc_create_async_64_h): New subroutine. (acc_create_async_array_h): New subroutine. (acc_copyout_async_32_h): New subroutine. (acc_copyout_async_64_h): New subroutine. (acc_copyout_async_array_h): New subroutine. (acc_delete_async_32_h): New subroutine. (acc_delete_async_64_h): New subroutine. (acc_delete_async_array_h): New subroutine. (acc_update_device_async_32_h): New subroutine. (acc_update_device_async_64_h): New subroutine. (acc_update_device_async_array_h): New subroutine. (acc_update_self_async_32_h): New subroutine. (acc_update_self_async_64_h): New subroutine. (acc_update_self_async_array_h): New subroutine. * libgomp.map (OACC_2.5): Add acc_copyin_async*, acc_copyout_async*, acc_copyout_finalize_async*, acc_create_async*, acc_delete_async*, acc_delete_finalize_async*, acc_memcpy_from_device_async*, acc_memcpy_to_device_async*, acc_update_device_async*, and acc_update_self_async* entries. * testsuite/libgomp.oacc-c-c++-common/lib-94.c: New test. * testsuite/libgomp.oacc-c-c++-common/lib-95.c: New test. * testsuite/libgomp.oacc-fortran/lib-16.f90: New test. From-SVN: r265842
Chung-Lin Tang committed -
* ipa-pure-const.c (check_decl): Do not test TYPE_NEEDS_CONSTRUCTING. * lto-streamer-out.c (hash_tree): Do not hash TYPE_NEEDS_CONSTRUCTING. * tree-streamer-in.c (unpack_ts_type_common_value_fields): Do not stream TYPE_NEEDS_CONSTRUCTING. * tree-streamer-out.c (pack_ts_type_common_value_fields): Likewise. * tree.c (free_lang_data_in_type): Clear TYPE_NEEDS_CONSTRUCTING. From-SVN: r265841
Jan Hubicka committed -
2018-11-06 Richard Biener <rguenther@suse.de> * tree-vect-slp.c (vect_slp_bb): Move opening of vect_slp_analyze_bb dump-scope ... (vect_slp_analyze_bb_1): ... here to avoid hiding optimized locations. From-SVN: r265840
Richard Biener committed -
2018-11-06 Jozef Lawrynowicz <jozef.l@mittosystems.com> * gcc/config/msp430/msp430.h (REG_CLASS_CONTENTS): Add R0 to REG_CLASS_CONTENTS[GEN_REGS]. (REGNO_REG_CLASS): Return NO_REGS for R2 and R3. * gcc/testsuite/gcc.target/msp430/special-regs.c: New test. From-SVN: r265839
Jozef Lawrynowicz committed -
From-SVN: r265838
Jan Hubicka committed -
gcc: PR sanitizer/80953 * config/sol2.h (ASAN_CC1_SPEC): Define. (LD_WHOLE_ARCHIVE_OPTION): Define. (LD_NO_WHOLE_ARCHIVE_OPTION): Define. (ASAN_REJECT_SPEC): Provide default. (LIBASAN_EARLY_SPEC): Define. (LIBTSAN_EARLY_SPEC): Define. (LIBLSAN_EARLY_SPEC): Define. * config/i386/sol2.h (CC1_SPEC): Redefine. (ASAN_REJECT_SPEC): Define. * config/sparc/sparc.c (sparc_asan_shadow_offset): Declare. (TARGET_ASAN_SHADOW_OFFSET): Define. (sparc_asan_shadow_offset): New function. * config/sparc/sol2.h (CC1_SPEC): Append ASAN_CC1_SPEC. (ASAN_REJECT_SPEC): Define. gcc/testsuite: PR sanitizer/80953 * c-c++-common/asan/alloca_loop_unpoisoning.c: Require alloca support. (foo): Use __builtin_alloca. libsanitizer: PR sanitizer/80953 * configure.tgt (sparc*-*-solaris2.11*): Enable. (x86_64-*-solaris2.11* | i?86-*-solaris2.11*): Enable. From-SVN: r265837
Rainer Orth committed -
PR sanitizer/80953 * sanitizer_common/sanitizer_internal_defs.h, sanitizer_common/sanitizer_platform_limits_solaris.h, sanitizer_common/sanitizer_procmaps_solaris.cc, sanitizer_common/sanitizer_solaris.cc: Cherry-pick compiler-rt revision 346153. * sanitizer_common/sanitizer_stacktrace.h, sanitizer_common/sanitizer_stacktrace_sparc.cc: Cherry-pick compiler-rt revision 346155. From-SVN: r265836
Rainer Orth committed -
* gcc.dg/lto/tbaa-1.c: New testcase. * tree.c (fld_type_variant): Copy canonical type. (fld_incomplete_type_of): Check that canonical types looks sane; copy canonical type. (verify_type): Accept when incomplete type has complete canonical type. From-SVN: r265835
Jan Hubicka committed -
* tree.c (free_lang_data): Reset overwite_assembler_name, print_xnode, print_decl, print_type and print_identifier of langhooks. From-SVN: r265834
Jan Hubicka committed -
2018-11-06 Richard Biener <rguenther@suse.de> PR tree-optimization/87889 * tree-vect-loop-manip.c (slpeel_duplicate_current_defs_from_edges): Do nothing if old and new arg are the same * gcc.dg/pr87894.c: New testcase. From-SVN: r265833
Richard Biener committed -
gcc/ChangeLog: 2018-11-06 Andreas Krebbel <krebbel@linux.ibm.com> PR target/87723 * config/s390/s390.md ("*r<noxa>sbg_di_rotl"): Remove mode attributes for operands 3 and 4. gcc/testsuite/ChangeLog: 2018-11-06 Andreas Krebbel <krebbel@linux.ibm.com> PR target/87723 * gcc.target/s390/pr87723.c: New test. From-SVN: r265832
Andreas Krebbel committed -
PR ada/81878 Revert 2018-10-29 Tamar Christina <tamar.christina@arm.com> PR ada/81878 * Makefile.in (TOOLS_FLAGS_TO_PASS_NATIVE): Add -B ../../. 2017-08-17 Richard Biener <rguenther@suse.de> PR ada/81878 * Makefile.in (CXX_LFLAGS): Remove. (TOOLS_FLAGS_TO_PASS_NATIVE): Pass $(CXX) as CXX. (TOOLS_FLAGS_TO_PASS_RE): Likewise. From-SVN: r265830
Eric Botcazou committed -
2018-11-06 Richard Biener <rguenther@suse.de> PR middle-end/18041 * simplify-rtx.c (simplify_binary_operation_1): Add pattern matching bitfield insertion. * gcc.target/i386/pr18041-1.c: New testcase. * gcc.target/i386/pr18041-2.c: Likewise. From-SVN: r265829
Richard Biener committed -
As auto_inc_dec pass combines incs and mems from different insns, it often causes regs to temporarily hold a value different from the one it would before the transformation. Debug insns within that range would therefore end up binding to the wrong expression after the transformation. This patch adjusts debug binds in the affected range. for gcc/ChangeLog * auto-inc-dec.c: Include valtrack.h. Improve comments. (reg_next_debug_use): New. (attempt_change): Propagate adjusted expression into affected debug insns. (merge_in_block): Track uses in debug insns. (pass_inc_dec::execute): Allocate and release reg_next_debug_use. From-SVN: r265828
Alexandre Oliva committed -
gcc/ 2018-11-06 Wei Xiao <wei3.xiao@intel.com> * config/i386/avx512fintrin.h: Update VFIXUPIMM* intrinsics. (_mm512_fixupimm_round_pd): Update parameters and builtin. (_mm512_maskz_fixupimm_round_pd): Ditto. (_mm512_fixupimm_round_ps): Ditto. (_mm512_maskz_fixupimm_round_ps): Ditto. (_mm_fixupimm_round_sd): Ditto. (_mm_maskz_fixupimm_round_sd): Ditto. (_mm_fixupimm_round_ss): Ditto. (_mm_maskz_fixupimm_round_ss): Ditto. (_mm512_fixupimm_pd): Ditto. (_mm512_maskz_fixupimm_pd): Ditto. (_mm512_fixupimm_ps): Ditto. (_mm512_maskz_fixupimm_ps): Ditto. (_mm_fixupimm_sd): Ditto. (_mm_maskz_fixupimm_sd): Ditto. (_mm_fixupimm_ss): Ditto. (_mm_maskz_fixupimm_ss): Ditto. (_mm512_mask_fixupimm_round_pd): Update builtin. (_mm512_mask_fixupimm_round_ps): Ditto. (_mm_mask_fixupimm_round_sd): Ditto. (_mm_mask_fixupimm_round_ss): Ditto. (_mm512_mask_fixupimm_pd): Ditto. (_mm512_mask_fixupimm_ps): Ditto. (_mm_mask_fixupimm_sd): Ditto. (_mm_mask_fixupimm_ss): Ditto. * config/i386/avx512vlintrin.h: (_mm256_fixupimm_pd): Update parameters and builtin. (_mm256_maskz_fixupimm_pd): Ditto. (_mm256_fixupimm_ps): Ditto. (_mm256_maskz_fixupimm_ps): Ditto. (_mm_fixupimm_pd): Ditto. (_mm_maskz_fixupimm_pd): Ditto. (_mm_fixupimm_ps): Ditto. (_mm_maskz_fixupimm_ps): Ditto. (_mm256_mask_fixupimm_pd): Update builtin. (_mm256_mask_fixupimm_ps): Ditto. (_mm_mask_fixupimm_pd): Ditto. (_mm_mask_fixupimm_ps): Ditto. * config/i386/i386-builtin-types.def: Add new types and remove useless ones. * config/i386/i386-builtin.def: Update builtin definitions. * config/i386/i386.c: Handle new builtin types and remove useless ones. * config/i386/sse.md: Update VFIXUPIMM* patterns. (<avx512>_fixupimm<mode>_maskz<round_saeonly_expand_name>): Update. (<avx512>_fixupimm<mode><sd_maskz_name><round_saeonly_name>): Update. (<avx512>_fixupimm<mode>_mask<round_saeonly_name>): Update. (avx512f_sfixupimm<mode>_maskz<round_saeonly_expand_name>): Update. (avx512f_sfixupimm<mode><sd_maskz_name><round_saeonly_name>): Update. (avx512f_sfixupimm<mode>_mask<round_saeonly_name>): Update. * config/i386/subst.md: (round_saeonly_sd_mask_operand4): Add new subst_attr. (round_saeonly_sd_mask_op4): Ditto. (round_saeonly_expand_operand5): Ditto. (round_saeonly_expand): Update. gcc/testsuite/ 2018-11-06 Wei Xiao <wei3.xiao@intel.com> * gcc.target/i386/avx-1.c: Update tests for VFIXUPIMM* intrinsics. * gcc.target/i386/avx512f-vfixupimmpd-1.c: Ditto. * gcc.target/i386/avx512f-vfixupimmpd-2.c: Ditto. * gcc.target/i386/avx512f-vfixupimmps-1.c: Ditto. * gcc.target/i386/avx512f-vfixupimmsd-1.c: Ditto. * gcc.target/i386/avx512f-vfixupimmsd-2.c: Ditto. * gcc.target/i386/avx512f-vfixupimmss-1.c: Ditto. * gcc.target/i386/avx512f-vfixupimmss-2.c: Ditto. * gcc.target/i386/avx512vl-vfixupimmpd-1.c: Ditto. * gcc.target/i386/avx512vl-vfixupimmps-1.c: Ditto. * gcc.target/i386/sse-13.c: Ditto. * gcc.target/i386/sse-14.c: Ditto. * gcc.target/i386/sse-22.c: Ditto. * gcc.target/i386/sse-23.c: Ditto. * gcc.target/i386/testimm-10.c: Ditto. * gcc.target/i386/testround-1.c: Ditto. From-SVN: r265827
Wei Xiao committed -
From-SVN: r265826
GCC Administrator committed
-
- 05 Nov, 2018 14 commits
-
-
xtensa-uclinux uses bFLT executable file format that cannot relocate fields representing offsets from data to code. C++ objects built as PIC use offsets to encode FDE structures. As a result C++ exception handling doesn't work correctly on xtensa-uclinux. Don't use PIC by default on xtensa-uclinux. gcc/ 2018-11-05 Max Filippov <jcmvbkbc@gmail.com> * config/xtensa/uclinux.h (XTENSA_ALWAYS_PIC): Change to 0. From-SVN: r265823
Max Filippov committed -
libquadmath sources are mostly based on glibc sources at present, but derived from them by a manual editing / substitution process and with subsequent manual merges. The manual effort involved in merges means they are sometimes incomplete and long-delayed. Since libquadmath was first created, glibc's support for this format has undergone significant changes so that it can also be used in glibc to provide *f128 functions for the _Float128 type from TS 18661-3. This makes it significantly easier to use it for libquadmath in a more automated fashion, since glibc has a float128_private.h header that redefines many identifiers as macros as needed for building *f128 functions. Simply using float128_private.h directly in libquadmath, with unmodified glibc sources except for changing function names in that one header to be *q instead of *f128, would be tricky, given its dependence on lots of other glibc-internal headers (whereas libquadmath supports non-glibc systems), and also given how some libm functions in glibc are built from type-generic templates using a further set of macros rather than from separate function implementations for each type. So instead this patch adds a script update-quadmath.py to convert glibc sources into libquadmath ones, and the script reads float128_private.h to identify many of the substitutions it should make. quadmath-imp.h is updated with various new internal definitions, taken from glibc as needed; this is the main place expected to need updating manually when subsequent merges from glibc are done using the script. No attempt is made to make the script output match the details of existing formatting, although the differences are of a size that makes a rough comparison (ignoring whitespace) possible. Two new public interfaces are added to libquadmath, exp2q and issignalingq, at a new QUADMATH_1.2 symbol version, since those interfaces are used internally by some of the glibc sources being merged into libquadmath; although there is a new symbol version, no change however is made to the libtool version in the libtool-version file. Although there are various other interfaces now in glibc libm but not in libquadmath, this patch does nothing to add such interfaces (although adding many of them would in fact be easy to do, given the script). One internal file (not providing any public interfaces), math/isinf_nsq.c, is removed, as no longer used by anything in libquadmath after the merge. Conditionals in individual source files on <fenv.h> availability or features are moved into quadmath-imp.h (providing trivial macro versions of the functions if real implementations aren't available), to simplify the substitutions in individual source files. Note however that I haven't tested for any configurations lacking <fenv.h>, so further changes could well be needed there. Two files in libquadmath/math/ are based on glibc sources but not updated in this patch: fmaq.c and rem_pio2q.c. Both could be updated after further changes to the script (and quadmath-imp.h as needed); in the case of rem_pio2q.c, based on two separate glibc source files, those separate files would naturally be split out into separate libquadmath source files in the process (as done in this patch with expq_table.h and tanq_kernel.c, where previously two glibc source files had been merged into one libquadmath source file). complex.c, nanq.c and sqrtq.c are not based on glibc sources (though four of the (trivial) functions in complex.c could readily be replaced by instead using the four corresponding files from glibc, if desired). libquadmath also has printf/ and strtod/ sources based on glibc, also mostly not updated for a long time. Again the script could no doubt be made to generate those automatically, although that would be a larger change (effectively some completely separate logic in the script, not sharing much if anything with the existing code). Bootstrapped with no regressions on x86_64-pc-linux-gnu. PR libquadmath/68686 * Makefile.am: (libquadmath_la_SOURCES): Remove math/isinf_nsq.c. Add math/exp2q.c math/issignalingq.c math/lgammaq_neg.c math/lgammaq_product.c math/tanq_kernel.c math/tgammaq_product.c math/casinhq_kernel.c. * Makefile.in: Regenerate. * libquadmath.texi (exp2q, issignalingq): Document. * quadmath-imp.h: Include <errno.h>, <limits.h>, <stdbool.h> and <fenv.h>. (HIGH_ORDER_BIT_IS_SET_FOR_SNAN, FIX_FLT128_LONG_CONVERT_OVERFLOW) (FIX_FLT128_LLONG_CONVERT_OVERFLOW, __quadmath_kernel_tanq) (__quadmath_gamma_productq, __quadmath_gammaq_r) (__quadmath_lgamma_negq, __quadmath_lgamma_productq) (__quadmath_lgammaq_r, __quadmath_kernel_casinhq, mul_splitq) (math_check_force_underflow_complex, __glibc_likely) (__glibc_unlikely, struct rm_ctx, SET_RESTORE_ROUNDF128) (libc_feholdsetround_ctx, libc_feresetround_ctx): New. (feraiseexcept, fenv_t, feholdexcept, fesetround, feupdateenv) (fesetenv, fetestexcept, feclearexcept): Define if not supported through <fenv.h>. (__quadmath_isinf_nsq): Remove. * quadmath.h (exp2q, issignalingq): New. * quadmath.map (QUADMATH_1.2): New. * quadmath_weak.h (exp2q, issignalingq): New. * update-quadmath.py: New file. * math/isinf_nsq.c: Remove file. * math/casinhq_kernel.c, math/exp2q.c, math/expq_table.h, math/issignalingq.c, math/lgammaq_neg.c, math/lgammaq_product.c, math/tanq_kernel.c, math/tgammaq_product.c: New files. Generated from glibc sources with update-quadmath.py. * math/acoshq.c, math/acosq.c, math/asinhq.c, math/asinq.c, math/atan2q.c, math/atanhq.c, math/atanq.c, math/cacoshq.c, math/cacosq.c, math/casinhq.c, math/casinq.c, math/catanhq.c, math/catanq.c, math/cbrtq.c, math/ccoshq.c, math/ceilq.c, math/cexpq.c, math/cimagq.c, math/clog10q.c, math/clogq.c, math/conjq.c, math/copysignq.c, math/coshq.c, math/cosq.c, math/cosq_kernel.c, math/cprojq.c, math/crealq.c, math/csinhq.c, math/csinq.c, math/csqrtq.c, math/ctanhq.c, math/ctanq.c, math/erfq.c, math/expm1q.c, math/expq.c, math/fabsq.c, math/fdimq.c, math/finiteq.c, math/floorq.c, math/fmaxq.c, math/fminq.c, math/fmodq.c, math/frexpq.c, math/hypotq.c, math/ilogbq.c, math/isinfq.c, math/isnanq.c, math/j0q.c, math/j1q.c, math/jnq.c, math/ldexpq.c, math/lgammaq.c, math/llrintq.c, math/llroundq.c, math/log10q.c, math/log1pq.c, math/log2q.c, math/logbq.c, math/logq.c, math/lrintq.c, math/lroundq.c, math/modfq.c, math/nearbyintq.c, math/nextafterq.c, math/powq.c, math/remainderq.c, math/remquoq.c, math/rintq.c, math/roundq.c, math/scalblnq.c, math/scalbnq.c, math/signbitq.c, math/sincos_table.c, math/sincosq.c, math/sincosq_kernel.c, math/sinhq.c, math/sinq.c, math/sinq_kernel.c, math/tanhq.c, math/tanq.c, math/tgammaq.c, math/truncq.c, math/x2y2m1q.c: Regenerate from glibc sources with update-quadmath.py. From-SVN: r265822
Joseph Myers committed -
The code with an intermediate register is perfectly fine, but LRA apparently cannot handle the resulting code, or perhaps something else is wrong. In either case, making an extra temporary will not likely help here, so let's just skip it. PR rtl-optimization/87871 * combine.c (make_more_copies): Skip if dest is frame_pointer_rtx. From-SVN: r265821
Segher Boessenkool committed -
Builtin_call_expression::do_numeric_constant_value can be called by Array_type::verify_length before the determine types pass, so accept an abstract type. Test case is https://golang.org/cl/147537. Fixes golang/go#28601 Reviewed-on: https://go-review.googlesource.com/c/147442 From-SVN: r265820
Ian Lance Taylor committed -
This re-applies r258525, and this time adds it to LOCAL_PATCHES. libsanitizer/ * LOCAL_PATCHES: Add r258525. * sanitizer_common/sanitizer_stacktrace.cc (BufferedStackTrace::FastUnwindStack): Use the correct frame offset for PowerPC SYSV ABI. From-SVN: r265817
Segher Boessenkool committed -
* lib/target-supports.exp: Add check for "inf" effective target keyword. * gcc.dg/builtins-44.c: Skip if no infinite support. * gcc.dg/builtins-45.c: Ditto. * gcc.dg/torture/builtin-complex-1.c: Ditto. * gcc.dg/torture/builtin-cproj-1.c: Ditto. * gcc.dg/torture/builtin-frexp-1.c: Ditto. * gcc.dg/torture/builtin-ldexp-1.c: Ditto. * gcc.dg/torture/builtin-logb-1.c: Ditto. * gcc.dg/torture/builtin-math-2.c: Ditto. * gcc.dg/torture/builtin-math-5.c: Ditto. * gcc.dg/torture/builtin-math-7.c: Ditto. * gcc.dg/torture/builtin-modf-1.c: Ditto. * gcc.dg/torture/type-generic-1.c: Ditto. From-SVN: r265816
Paul Koning committed -
* doc/sourcebuild.texi (target attributes): Document new "inf" effective target keyword. From-SVN: r265815
Paul Koning committed -
This increases the move costs for moves involving the CC register which saves us some instructions in SPEC CPU2006. gcc/ChangeLog: 2018-11-05 Robin Dapp <rdapp@linux.ibm.com> * config/s390/s390.c (s390_register_move_cost): Increase costs for moves involving the CC reg. From-SVN: r265814
Robin Dapp committed -
RTL output now includes column numbers in addition to line numbers, like this: "gcc/testsuite/gcc.target/s390/md/andc-splitter-1.c":16:1 This confuses some S/390 tests. gcc/testsuite/ChangeLog: 2018-11-05 Ilya Leoshkevich <iii@linux.ibm.com> * gcc.target/s390/md/andc-splitter-1.c: Add colon to expectations. * gcc.target/s390/md/andc-splitter-2.c: Likewise. * gcc.target/s390/md/setmem_long-1.c: Likewise. From-SVN: r265813
Ilya Leoshkevich committed -
re PR tree-optimization/87873 (ICE: verify_gimple failed (error: incompatible types in PHI argument 0)) 2018-11-05 Richard Biener <rguenther@suse.de> PR tree-optimization/87873 * tree-ssa-loop-manip.h (split_loop_exit_edge): Add copy_constants_p argument. * tree-ssa-loop-manip.c (split_loop_exit_edge): Likewise. * tree-vect-loop.c (vect_transform_loop): When splitting the loop exit also create forwarder PHIs for constants. * tree-vect-loop-manip.c (slpeel_duplicate_current_defs_from_edges): Handle constant to_arg, add extra checking we match up the correct PHIs. * gcc.dg/pr87873.c: New testcase. From-SVN: r265812
Richard Biener committed -
2018-11-05 Martin Liska <mliska@suse.cz> * symtab.c (ht_dump_statistics): Replace %zu with %lu format. From-SVN: r265811
Martin Liska committed -
2018-11-05 Martin Liska <mliska@suse.cz> * symtab.c (ht_dump_statistics): Fix format and pass missing argument. From-SVN: r265810
Martin Liska committed -
This adds QImode and HImode support to load on condition. gcc/ChangeLog: 2018-11-05 Robin Dapp <rdapp@linux.ibm.com> * config/s390/s390.md: QImode and HImode for load on condition. gcc/testsuite/ChangeLog: 2018-11-05 Robin Dapp <rdapp@linux.ibm.com> * gcc.target/s390/ifcvt-one-insn-bool.c: New test. * gcc.target/s390/ifcvt-one-insn-char.c: New test. From-SVN: r265808
Robin Dapp committed -
This allows immediate operands for load on condition. gcc/ChangeLog: 2018-11-05 Robin Dapp <rdapp@linux.ibm.com> * config/s390/predicates.md: Fix typo. * config/s390/s390.md: Allow immediates for load on condition. gcc/testsuite/ChangeLog: 2018-11-05 Robin Dapp <rdapp@linux.ibm.com> * gcc.dg/loop-8.c: On s390, always run the test with -march=zEC12. From-SVN: r265804
Robin Dapp committed
-