- 07 Mar, 2017 7 commits
-
-
2017-03-07 Richard Biener <rguenther@suse.de> * tree-vect-loop-manip.c (slpeel_add_loop_guard): Preserve preheaders. From-SVN: r245950
Richard Biener committed -
As Shmuel reported in <https://gcc.gnu.org/ml/gcc-help/2017-03/msg00009.html>, on x86-64 small structures in automatic storage are aligned to 16 bytes. This seems to be because of a mix-up between bits and bytes in the i386 target code. * config/i386/i386.c (ix86_local_alignment): Align most aggregates of 16 bytes and more to 16 bytes, not those of 16 bits and more. From-SVN: r245949
Segher Boessenkool committed -
PR c/79855 * params.def (PARAM_STORE_MERGING_ALLOW_UNALIGNED): Add full stop to end of description. (PARAM_MAX_STORES_TO_MERGE): Likewise. From-SVN: r245948
Kyrylo Tkachov committed -
PR rtl-optimization/79901 * config/i386/sse.md (*avx512bw_<code><mode>3<mask_name>): Renamed to ... (*avx512f_<code><mode>3<mask_name>): ... this. (<code><mode>3 with maxmin code iterator): Use VI8_AVX2_AVX512F iterator instead of VI8_AVX2_AVX512BW. * gcc.target/i386/pr79901.c: New test. From-SVN: r245947
Jakub Jelinek committed -
PR rtl-optimization/79901 * expr.c (expand_expr_real_2): For vector MIN/MAX, if there is no min/max expander, expand it using expand_vec_cond_expr. From-SVN: r245946
Jakub Jelinek committed -
PR sanitizer/79897 * ubsan.c (ubsan_encode_value): Call mark_addressable on the temporary. * c-c++-common/ubsan/pr79897.c: New test. From-SVN: r245945
Jakub Jelinek committed -
From-SVN: r245943
GCC Administrator committed
-
- 06 Mar, 2017 25 commits
-
-
From-SVN: r245937
John David Anglin committed -
PR c++/79821 * dwarf2out.h (dw_vec_const): Change array type from unsigned char * to void * for PCH reasons. * dwarf2out.c (output_loc_operands, output_die): Cast v.val_vec.array to unsigned char *. From-SVN: r245932
Jakub Jelinek committed -
PR target 77850 * config/pa/pa-64.h (PAD_VARARGS_DOWN): Don't pad down complex and vector types. From-SVN: r245931
John David Anglin committed -
From-SVN: r245929
Vladimir Makarov committed -
re PR rtl-optimization/79571 (ICE in Max. number of generated reload insns per insn is achieved (90)) 2017-03-06 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/79571 * lra-constraints.c (process_alt_operands): Claculate static reject and subtract it from overal when there will be only address reloads. 2017-03-06 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/79571 * gcc.target/i386/pr79571.c: New. From-SVN: r245928
Vladimir Makarov committed -
PR c++/79796 - ICE with NSDMI and this pointer * call.c (build_over_call): Handle NSDMI with a 'this' by calling replace_placeholders. * g++.dg/cpp0x/nsdmi13.C: New test. From-SVN: r245927
Marek Polacek committed -
For 64-bit targets, the incoming stack of interrupt handler is aligned to 16 bytes. Update ix86_minimum_incoming_stack_boundary to set the incoming stack boundary of interrupt handler to 128 for 64-bit targets. gcc/ 2017-03-06 Julia Koval <julia.koval@intel.com> PR target/79793 * config/i386/i386.c (ix86_minimum_incoming_stack_boundary): Set incoming stack boundary to 128 for 64-bit targets. gcc/testsuite/ 2017-03-06 Julia Koval <julia.koval@intel.com> PR target/79793 * gcc.target/i386/interrupt-12.c: Update scan-assembler-times directives. * gcc.target/i386/interrupt-13.c: Ditto. * gcc.target/i386/interrupt-14.c: Ditto. * gcc.target/i386/interrupt-15.c: Ditto. From-SVN: r245926
Julia Koval committed -
PR c++/79822 * constexpr.c (cxx_eval_statement_list): Treat empty ({ }) like ({ (void) 0; }). * g++.dg/cpp0x/constexpr-79822.C: New test. From-SVN: r245925
Jakub Jelinek committed -
* cp-tree.h, parser.c, pt.c, search.c: Revert. From-SVN: r245924
Jason Merrill committed -
2017-03-06 Richard Biener <rguenther@suse.de> PR tree-optimization/79894 * tree-vectorizer.c (vectorize_loops): Set loop_vectorized_call to NULL after folding it. * gcc.dg/vect/pr79887.c: New testcase. From-SVN: r245923
Richard Biener committed -
2017-03-06 Richard Biener <rguenther@suse.de> PR tree-optimization/79824 * tree-vect-stmts.c (get_group_load_store_type): Fix alignment check disabling peeling for gaps. * gcc.dg/vect/pr79824-1.c: New testcase. * gcc.dg/vect/pr79824-2.c: Likewise. From-SVN: r245922
Richard Biener committed -
gcc/ * doc/sourcebuild.texi (Effective-Target Keywords, Environment attributes): Document gettimeofday. gcc/testsuite/ * gcc.dg/lto/pr60449_0.c: Add dg-require-effective-target for gettimeofday. Remove dg-skip-if for AVR. * lib/target-supports.exp (check_effective_target_gettimeofday): New proc. From-SVN: r245921
Toma Tabacu committed -
2017-03-06 Richard Biener <rguenther@suse.de> PR fortran/79894 * trans.c (gfc_add_modify_loc): Weaken assert. From-SVN: r245919
Richard Biener committed -
The following patch defines the PARAM_MIN_VECT_LOOP_BOUND parameter in the s390 backend. It helps with the vectorization epilogue problem described here [1]. I see an overall performance increase of > 1% in SPECfp2006, yet some cases like cactusADM regress. This seems to be caused by the vectorizer creating an epilogue guard for one more iteration than before, which, in turn, causes e.g. predcom to run on the epilogue that it used to ignore before ("Loop iterates only 1 time, nothing to do."). Subsequent, minor, effects cause an eventual slowdown. Until the reason for the bad epilogue code is understood, this patch mitigates the problem. When investigating the issue, I stumbled across an attempt to vectorize the epilogue itself as well as combine it with the vectorized loop in addition to vector masking [2]. A similar approach might also help here. My original observation of high register pressure within the epilogue still stands. In this specific case, it would most likely suffice to save all registers once, run the epilogue and restore the registers. I'm pretty sure this would be faster than the "spill fest" that's currently happening. Regards Robin [1] https://gcc.gnu.org/ml/gcc/2017-01/msg00234.html [2] https://gcc.gnu.org/ml/gcc-patches/2016-05/msg01562.html gcc/ChangeLog: 2017-03-06 Robin Dapp <rdapp@linux.vnet.ibm.com> * config/s390/s390.c (s390_option_override_internal): Set PARAM_MIN_VECT_LOOP_BOUND From-SVN: r245918
Robin Dapp committed -
The following patch changes "nopr %r7" to "nopr %r0" which is advantageous from a hardware perspective. It will only be emitted for hotpatching and should not impact normal code. gcc/ChangeLog: 2017-03-06 Robin Dapp <rdapp@linux.vnet.ibm.com> * config/s390/s390.c (s390_asm_output_function_label): Use nopr %r0. * config/s390/s390.md: Likewise. gcc/testsuite/ChangeLog: 2017-03-06 Robin Dapp <rdapp@linux.vnet.ibm.com> * gcc.target/s390/hotpatch-1.c: Check for nopr %r0. * gcc.target/s390/hotpatch-10.c: Likewise. * gcc.target/s390/hotpatch-11.c: Likewise. * gcc.target/s390/hotpatch-12.c: Likewise. * gcc.target/s390/hotpatch-13.c: Likewise. * gcc.target/s390/hotpatch-14.c: Likewise. * gcc.target/s390/hotpatch-15.c: Likewise. * gcc.target/s390/hotpatch-16.c: Likewise. * gcc.target/s390/hotpatch-17.c: Likewise. * gcc.target/s390/hotpatch-18.c: Likewise. * gcc.target/s390/hotpatch-19.c: Likewise. * gcc.target/s390/hotpatch-2.c: Likewise. * gcc.target/s390/hotpatch-26.c: Likewise. * gcc.target/s390/hotpatch-27.c: Likewise. * gcc.target/s390/hotpatch-28.c: Likewise. * gcc.target/s390/hotpatch-3.c: Likewise. * gcc.target/s390/hotpatch-4.c: Likewise. * gcc.target/s390/hotpatch-5.c: Likewise. * gcc.target/s390/hotpatch-6.c: Likewise. * gcc.target/s390/hotpatch-7.c: Likewise. * gcc.target/s390/hotpatch-8.c: Likewise. * gcc.target/s390/hotpatch-9.c: Likewise. From-SVN: r245917
Robin Dapp committed -
2017-03-06 Paolo Carlini <paolo.carlini@oracle.com> PR c++/64574 * g++.dg/template/crash125.C: New. From-SVN: r245916
Paolo Carlini committed -
PR target/79812 * config/i386/sse.md (VI8F_256_512): Remove mode iterator. (<avx2_avx512>_perm<mode>): Rename to ... (avx2_perm<mode>): ... this. Use VI8F_256 iterator instead of VI8F_256_512. (<avx512>_perm<mode>_mask): Rename to ... (avx512vl_perm<mode>_mask): ... this. Use VI8F_256 iterator instead of VI8F_256_512. (<avx2_avx512>_perm<mode>_1<mask_name>): Rename to ... (avx2_perm<mode>_1<mask_name): ... this. Use VI8F_256 iterator instead of VI8F_256_512. (avx512f_perm<mode>): New define_expand. (avx512f_perm<mode>_mask): Likewise. (avx512f_perm<mode>_1<mask_name>): New define_insn. (<avx512>_vec_dup<mode>_1): Fix up vec_select mode. * gcc.target/i386/avx512f-vpermq-imm-3.c: New test. From-SVN: r245915
Jakub Jelinek committed -
gcc/testsuite/ * gcc.target/mips/inline-memcpy-3.c (dg-options): Add -mabi=32. From-SVN: r245914
Toma Tabacu committed -
gcc/ * config/mips/mips-msa.md (msa_fmax_a_<msafmt>, msa_fmin_a_<msafmt>, msa_max_a_<msafmt>, msa_min_a_<msafmt>): Introduce mode interator for if_then_else. (smin<mode>3, smax<mode>3): Change operand print code from 'B' to 'E'. gcc/testsuite/ * gcc.target/mips/msa-minmax.c: New tests. From-SVN: r245913
Prachi Godbole committed -
2017-03-06 Martin Liska <mliska@suse.cz> PR sanitize/79783 * asan.c (asan_expand_poison_ifn): Do not expand ASAN_POISON when having a SSA NAME w/o VAR_DECL assigned to it. 2017-03-06 Martin Liska <mliska@suse.cz> PR sanitize/79783 * g++.dg/asan/pr79783.C: New test. From-SVN: r245912
Martin Liska committed -
gcc/ * config/mips/mips-msa.md (msa_dotp_<su>_d, msa_dpadd_<su>_d, msa_dpsub_<su>_d): Fix MODE for vec_select. gcc/testsuite/ * gcc.target/mips/msa-dotp.c: New tests. From-SVN: r245911
Prachi Godbole committed -
gcc/ * config/mips/mips.c (mips_gen_const_int_vector): Change type of last argument. * config/mips/mips-protos.h (mips_gen_const_int_vector): Likewise. gcc/testsuite/ * gcc.target/mips/msa-bclri.c: New test. From-SVN: r245910
Prachi Godbole committed -
2017-03-06 Richard Biener <rguenther@suse.de> * lto-streamer.c (lto_check_version): Use %qs in diagnostics. * plugin.c (register_plugin_info): Likewise. * tree-chkp.c (chkp_make_static_const_bounds): Likewise. From-SVN: r245909
Richard Biener committed -
From-SVN: r245908
Joseph Myers committed -
From-SVN: r245907
GCC Administrator committed
-
- 05 Mar, 2017 5 commits
-
-
* config/i386/sse.md (sse_storehps, sse_storelps, avx_<castmode><avxsizesuffix>_<castmode>, avx512f_<castmode><avxsizesuffix>_<castmode>, avx512f_<castmode><avxsizesuffix>_256<castmode>): Require in condition that at least one operand is not a MEM. From-SVN: r245904
Jakub Jelinek committed -
* doc/xml/manual/status_cxx2017.xml: Document P0156R2 status. * doc/html/*: Regenerate. * include/std/mutex (scoped_lock): Implement new C++17 template. * testsuite/30_threads/scoped_lock/cons/1.cc: New test. * testsuite/30_threads/scoped_lock/requirements/ explicit_instantiation.cc: New test. * testsuite/30_threads/scoped_lock/requirements/typedefs.cc: New test. From-SVN: r245903
Jonathan Wakely committed -
re PR c++/70266 (ICE on invalid code on x86_64-linux-gnu: unexpected expression ‘foo’ of kind overload) /cp 2017-03-05 Paolo Carlini <paolo.carlini@oracle.com> PR c++/70266 * except.c (build_must_not_throw_expr): Perform the implicit conversions on the condition. /testsuite 2017-03-05 Paolo Carlini <paolo.carlini@oracle.com> PR c++/70266 * g++.dg/tm/pr70266.C: New. From-SVN: r245901
Paolo Carlini committed -
gcc/fortran/ChangeLog: 2017-03-05 Andre Vehreschild <vehre@gcc.gnu.org> Alessandro Fanfarillo <fanfarillo.gcc@gmail.com> * check.c (positive_check): Add new function checking constant for being greater then zero. (gfc_check_image_status): Add checking of image_status arguments. (gfc_check_failed_or_stopped_images): Same but for failed_- and stopped_images function. * dump-parse-tree.c (show_code_node): Added output of FAIL IMAGE. * gfortran.h (enum gfc_statement): Added FAIL_IMAGE_ST. (enum gfc_isym_id): Added new intrinsic symbols. (enum gfc_exec_op): Added EXEC_FAIL_IMAGE. * gfortran.texi: Added description for the new API functions. Updated coverage of gfortran of TS18508. * intrinsic.c (add_functions): Added symbols to resolve new intrinsic functions. * intrinsic.h: Added prototypes. * iresolve.c (gfc_resolve_failed_images): Resolve the failed_images intrinsic. (gfc_resolve_image_status): Same for image_status. (gfc_resolve_stopped_images): Same for stopped_images. * libgfortran.h: Added prototypes. * match.c (gfc_match_if): Added matching of FAIL IMAGE statement. (gfc_match_fail_image): Match a FAIL IMAGE statement. * match.h: Added prototype. * parse.c (decode_statement): Added matching for FAIL IMAGE. (next_statement): Same. (gfc_ascii_statement): Same. * resolve.c: Same. * simplify.c (gfc_simplify_failed_or_stopped_images): For COARRAY= single a constant result can be returne.d (gfc_simplify_image_status): For COARRAY=single the result is constant. * st.c (gfc_free_statement): Added FAIL_IMAGE handling. * trans-decl.c (gfc_build_builtin_function_decls): Added decls of the new intrinsics. * trans-expr.c (gfc_conv_procedure_call): This is first time all arguments of a function are optional, which is now handled here correctly. * trans-intrinsic.c (conv_intrinsic_image_status): Translate image_status. (gfc_conv_intrinsic_function): Add support for image_status. (gfc_is_intrinsic_libcall): Add support for the remaining new intrinsics. * trans-stmt.c (gfc_trans_fail_image): Trans a fail image. * trans-stmt.h: Add the prototype for the above. * trans.c (trans_code): Dispatch for fail_image. * trans.h: Add the trees for the new intrinsics. libgfortran/ChangeLog: 2017-03-05 Andre Vehreschild <vehre@gcc.gnu.org> Alessandro Fanfarillo <fanfarillo.gcc@gmail.com> * caf/libcaf.h: Added prototypes and stat codes for failed and stopped images. * caf/single.c (void _gfortran_caf_fail_image): Add the routine. (int _gfortran_caf_image_status): Same. (_gfortran_caf_failed_images): Same. (_gfortran_caf_stopped_images): Same. gcc/testsuite/ChangeLog: 2017-03-05 Andre Vehreschild <vehre@gcc.gnu.org> Alessandro Fanfarillo <fanfarillo.gcc@gmail.com> * gfortran.dg/coarray/fail_image_1.f08: New test. * gfortran.dg/coarray/fail_image_2.f08: New test. * gfortran.dg/coarray/failed_images_1.f08: New test. * gfortran.dg/coarray/failed_images_2.f08: New test. * gfortran.dg/coarray/image_status_1.f08: New test. * gfortran.dg/coarray/image_status_2.f08: New test. * gfortran.dg/coarray/stopped_images_1.f08: New test. * gfortran.dg/coarray/stopped_images_2.f08: New test. * gfortran.dg/coarray_fail_st.f90: New test. * gfortran.dg/coarray_failed_images_1.f08: New test. * gfortran.dg/coarray_image_status_1.f08: New test. * gfortran.dg/coarray_stopped_images_1.f08: New test. From-SVN: r245900
Andre Vehreschild committed -
From-SVN: r245897
GCC Administrator committed
-
- 04 Mar, 2017 3 commits
-
-
* c.opt (Wnoexcept-type): New. gcc/cp/ * mangle.c (mangle_decl): Check -Wnoexcept-type instead of -Wc++1z-compat. From-SVN: r245894
Jason Merrill committed -
PR c/79847 * c-decl.c (implicit_decl_warning): Add missing space. From-SVN: r245893
Marek Polacek committed -
* call.c (joust): Adjust using-declaration tiebreaker to handle the intermediate base case. * method.c (strip_inheriting_ctors): Just return the argument if !flag_new_inheriting_ctors. From-SVN: r245892
Jason Merrill committed
-