- 30 Mar, 2017 3 commits
-
-
PR target/80206 * config/i386/sse.md (<extract_type>_vextract<shuffletype><extract_suf>_mask): Use register as dest whenever it is a MEM not rtx_equal_p to the corresponding dup operand, and when forcing into reg move the reg into the memory afterwards. (<extract_type_2>_vextract<shuffletype><extract_suf_2>_mask): Likewise. Use <ssehalfvecmode> instead of <ssequartermode> for the force_reg mode. (avx512vl_vextractf128<mode>): Use register as dest either always when a MEM, or when it is a MEM not rtx_equal_p to the corresponding dup operand, or even not when it is a CONST_VECTOR depending on the mode and lo vs. hi. (avx512dq_vextract<shuffletype>64x2_1_maskm): Remove extraneous parens. (avx512f_vextract<shuffletype>32x4_1_maskm): Likewise. (<mask_codefor>avx512dq_vextract<shuffletype>64x2_1<mask_name>): Likewise. Require that operands[2] is even. (<mask_codefor>avx512f_vextract<shuffletype>32x4_1<mask_name>): Remove extraneous parens. Require that operands[2] is a multiple of 4. (vec_extract_lo_<mode><mask_name>): Don't bother testing if operands[0] is a MEM if <mask_applied>, the predicates/constraints disallow memory then. * gcc.target/i386/pr80206.c: New test. From-SVN: r246588
Jakub Jelinek committed -
2017-03-30 Richard Biener <rguenther@suse.de> PR tree-optimization/77498 * tree-ssa-pre.c (phi_translate_1): Do not allow simplifications to non-constants over backedges. * gfortran.dg/pr77498.f: New testcase. From-SVN: r246583
Richard Biener committed -
From-SVN: r246581
GCC Administrator committed
-
- 29 Mar, 2017 11 commits
-
-
re PR c/79730 (ICE tree check: expected var_decl, have function_decl in finish_decl, at c/c-decl.c:5063) PR c/79730 * c-decl.c (finish_decl): Check VAR_P. * gcc.dg/pr79730.c: New test. From-SVN: r246578
Marek Polacek committed -
2017-03-29 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libgfortran/78670 * io/list_read.c (nml_get_obj_data): Delete code which calls the child read procedure. (nml_read_obj): Insert the code which calls the child procedure. Don't need to touch nodes if using dtio since parent will not be traversing the components. PR libgfortran/78670 * gfortran.dg/dtio_25.f90: Use 'a1' format when trying to read a character of length 1. Update test for success. * gfortran.dg/dtio_28.f03: New test. * gfortran.dg/dtio_4.f90: Update to open test file with status = 'scratch' to delete the file when done. From-SVN: r246576
Jerry DeLisle committed -
If combine has added an unconditional trap there will be a new basic block as well. It will then end up considering the NOTE_INSN_BASIC_BLOCK as the last_combined_insn, but then it tries to take the DF_INSN_LUID of that and that dereferences a NULL pointer (since such a note is not an INSN_P). This fixes it by not taking non-insns as last_combined_insn. PR rtl-optimization/80233 * combine.c (combine_instructions): Only take NONDEBUG_INSN_P insns as last_combined_insn. Do not test for BARRIER_P separately. gcc/testsuite/ PR rtl-optimization/80233 * gcc.c-torture/compile/pr80233.c: New testcase. From-SVN: r246575
Segher Boessenkool committed -
From-SVN: r246574
Joseph Myers committed -
2017-03-28 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/80254 * gfortran.dg/dec_io_2.f90: Do not run on MINGW, run * gfortran.dg/dec_io_2a.f90: instead (new test). From-SVN: r246573
Thomas Koenig committed -
PR ada/80146 * calls.c (prepare_call_address): Convert funexp to Pmode before copying to temp reg. From-SVN: r246570
Andreas Schwab committed -
From-SVN: r246569
William Schmidt committed -
2017-03-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com> PR tree-optimization/80158 * gimple-ssa-strength-reduction.c (replace_mult_candidate): Handle possible future case of more than one alternate interpretation. (replace_rhs_if_not_dup): Likewise. (replace_one_candidate): Likewise. Co-Authored-By: Richard Biener <rguenther@suse.de> From-SVN: r246567
Bill Schmidt committed -
* python/libstdcxx/v6/printers.py (StdExpOptionalPrinter.__init__): Look at the nested payload in case of non-experimental optional. From-SVN: r246566
Ville Voutilainen committed -
testsuite/ * g++.dg/tls/thread_local-order2.C: XFAIL on newlib. As commented by Mike, it's better that newlib support this feature, tracked by https://sourceware.org/bugzilla/show_bug.cgi?id=21325 From-SVN: r246563
Jiong Wang committed -
From-SVN: r246560
GCC Administrator committed
-
- 28 Mar, 2017 26 commits
-
-
From-SVN: r246557
Joseph Myers committed -
Implement LWG 2900, The copy and move constructors of optional are not constexpr. * include/std/optional (_Optional_payload): New. (_Optional_base): Remove the bool parameter. (_Optional_base<_Tp, false>): Remove. (_Optional_base()): Adjust. (_Optional_base(nullopt_t)): Likewise. (_Optional_base(in_place_t, _Args&&...)): Likewise. (_Optional_base(in_place_t, initializer_list<_Up>, _Args&&...)): Likewise. (_Optional_base(const _Optional_base&)): Likewise. (_Optional_base(_Optional_base&&)): Likewise. (operator=(const _Optional_base&)): Likewise. (operator=(_Optional_base&&)): Likewise. (~_Optional_base()): Remove. (_M_is_engaged()): Adjust. (_M_get()): Likewise. (_M_construct(_Args&&...)): Likewise. (_M_destruct()): Likewise. (_M_reset()): Likewise. (_Optional_base::_Empty_byte): Remove. (_Optional_base::_M_empty): Remove. (_Optional_base::_M_payload): Adjust. * testsuite/20_util/optional/cons/value_neg.cc: Adjust. * testsuite/20_util/optional/constexpr/cons/value.cc: Add tests. From-SVN: r246556
Ville Voutilainen committed -
With PIC a @ha relocation isn't generated, so skip that test then. PR testsuite/43496 * gcc.target/powerpc/gcse-1.c: Skip scan-assembler-times "@ha" if generating PIC code. From-SVN: r246555
Segher Boessenkool committed -
re PR rtl-optimization/80193 (ICE on valid (but hairy) C code at -O3 on x86_64-linux-gnu: in check_allocation, at ira.c:2563) 2017-03-28 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/80193 * ira.c (ira): Do not check allocation for LRA. 2017-03-28 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/80193 * gcc.target/i386/pr80193.c: New. From-SVN: r246554
Vladimir Makarov committed -
PR go/80226 * go-gcc.cc (Gcc_backend::return_statement): Check for void_type_node when checking result size. From-SVN: r246553
Than McIntosh committed -
* config/nvptx/nvptx-protos.h (nvptx_output_simt_enter): Declare. (nvptx_output_simt_exit): Declare. * config/nvptx/nvptx.c (nvptx_init_unisimt_predicate): Use cfun->machine->unisimt_location. Handle NULL unisimt_predicate. (init_softstack_frame): Move initialization of crtl->is_leaf to... (nvptx_declare_function_name): ...here. Emit declaration of local memory space buffer for omp_simt_enter insn. (nvptx_output_unisimt_switch): New. (nvptx_output_softstack_switch): New. (nvptx_output_simt_enter): New. (nvptx_output_simt_exit): New. * config/nvptx/nvptx.h (struct machine_function): New fields has_simtreg, unisimt_location, simt_stack_size, simt_stack_align. * config/nvptx/nvptx.md (UNSPECV_SIMT_ENTER): New unspec. (UNSPECV_SIMT_EXIT): Ditto. (omp_simt_enter_insn): New insn. (omp_simt_enter): New expansion. (omp_simt_exit): New insn. * config/nvptx/nvptx.opt (msoft-stack-reserve-local): New option. * internal-fn.c (expand_GOMP_SIMT_ENTER): New. (expand_GOMP_SIMT_ENTER_ALLOC): New. (expand_GOMP_SIMT_EXIT): New. * internal-fn.def (GOMP_SIMT_ENTER): New internal function. (GOMP_SIMT_ENTER_ALLOC): Ditto. (GOMP_SIMT_EXIT): Ditto. * target-insns.def (omp_simt_enter): New insn. (omp_simt_exit): Ditto. * omp-low.c (struct omplow_simd_context): New fields simt_eargs, simt_dlist. (lower_rec_simd_input_clauses): Implement SIMT privatization. (lower_rec_input_clauses): Likewise. (lower_lastprivate_clauses): Handle SIMT privatization. * omp-offload.c: Include langhooks.h, tree-nested.h, stor-layout.h. (ompdevlow_adjust_simt_enter): New. (find_simtpriv_var_op): New. (execute_omp_device_lower): Handle IFN_GOMP_SIMT_ENTER, IFN_GOMP_SIMT_ENTER_ALLOC, IFN_GOMP_SIMT_EXIT. * tree-inline.h (struct copy_body_data): New field dst_simt_vars. * tree-inline.c (expand_call_inline): Handle SIMT privatization. (copy_decl_for_dup_finish): Ditto. * tree-ssa.c (execute_update_addresses_taken): Handle GOMP_SIMT_ENTER. From-SVN: r246550
Alexander Monakov committed -
2017-03-28 Janus Weil <janus@gcc.gnu.org> PR fortran/78661 * trans-io.c (transfer_namelist_element): Perform a polymorphic call to a DTIO procedure if necessary. 2017-03-28 Janus Weil <janus@gcc.gnu.org> PR fortran/78661 * gfortran.dg/dtio_25.f90: Modified test case. * gfortran.dg/dtio_27.f90: New test case. 2017-03-28 Janus Weil <janus@gcc.gnu.org> PR fortran/78661 * io/write.c (nml_write_obj): Build a class container only if necessary. From-SVN: r246546
Janus Weil committed -
From-SVN: r246545
Uros Bizjak committed -
PR target/53383 * config/i386/i386.c (ix86_option_override_internal): Always allow -mincoming-stack-boundary=3 for 64-bit targets. testsuite/ChangeLog: PR target/53383 * gcc.target/i386/pr53383-1.c (dg-options): Remove -mno-sse. * gcc.target/i386/pr53383-2.c (dg-options): Ditto. * gcc.target/i386/pr53383-3.c (dg-options): Ditto. From-SVN: r246543
Uros Bizjak committed -
PR libstdc++/80137 * include/bits/random.tcc (generate_canonical): Use std::nextafter or numeric_limits::epsilon() to reduce out-of-range values. * testsuite/26_numerics/random/uniform_real_distribution/operators/ 64351.cc: Verify complexity requirement is met. From-SVN: r246542
Jonathan Wakely committed -
* tree-vect-loop.c (optimize_mask_stores): Add bb to the right loop. From-SVN: r246541
Bin Cheng committed -
tree-vect-loop-manip.c (slpeel_add_loop_guard): New param and mark new edge's irreducible flag accordign to it. * tree-vect-loop-manip.c (slpeel_add_loop_guard): New param and mark new edge's irreducible flag accordign to it. (vect_do_peeling): Check loop preheader edge's irreducible flag and pass it to function slpeel_add_loop_guard. gcc/testsuite * gcc.c-torture/compile/irreducible-loop.c: New. From-SVN: r246540
Bin Cheng committed -
gcc/ PR tree-optimization/80218 * tree-call-cdce.c (shrink_wrap_one_built_in_call_with_conds): Update block frequencies and counts. gcc/testsuite/ PR tree-optimization/80218 * gcc.dg/pr80218.c: New test. From-SVN: r246538
Richard Sandiford committed -
2017-03-28 Richard Biener <rguenther@suse.de> PR tree-optimization/78644 * tree-ssa-ccp.c (evaluate_stmt): When we may not use the value of a simplification result we may not use it at all. * gcc.dg/pr78644-1.c: New testcase. * gcc.dg/pr78644-2.c: Likewise. From-SVN: r246534
Richard Biener committed -
gcc/testsuite/ * gcc.dg/pic-3.c: Skip for mips*-*-linux-*. * gcc.dg/pic-4.c: Likewise. * gcc.dg/pie-3.c: Likewise. * gcc.dg/pie-4.c: Likewise. From-SVN: r246533
Toma Tabacu committed -
* doc/xml/manual/abi.xml: Add xml:id anchor. * doc/xml/manual/using.xml (manual.intro.using.macros): Document _GLIBCXX_RELEASE. Link to new anchor for __GLIBCXX__ notes. (concurrency.io.structure): Add markup. * doc/html/*: Regenerate. From-SVN: r246532
Jonathan Wakely committed -
2017-03-28 Martin Liska <mliska@suse.cz> PR ipa/80205 * g++.dg/ipa/pr80205.C: New test. 2017-03-28 Richard Biener <rguenther@suse.de> PR ipa/80205 * tree-inline.c (copy_phis_for_bb): Do not create PHI node without arguments, generate default definition of a SSA name. From-SVN: r246530
Martin Liska committed -
These tests assume {unsigned,} ints are 32 bits or wider. Explicitly specify __{U}INT32_TYPE__ for targets with __SIZEOF_INT__ < 4. gcc/testsuite/ 2017-03-28 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com> * gcc.c-torture/execute/pr79121.c:Use __{U}INT32_TYPE__ for targets with sizeof(int) < 4. * gcc.c-torture/execute/pr79737-1.c (struct S): Likewise. * gcc.c-torture/execute/pr79737-2.c: Likewise. * gcc.dg/torture/pr79777.c: Likewise. * gcc.dg/torture/pr79910.c: Likewise. From-SVN: r246529
Senthil Kumar Selvaraj committed -
PR ada/80117 * system-linux-aarch64-ilp32.ads: New file. * gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS_COMMON): Rename from LIBGNAT_TARGET_PAIRS. (LIBGNAT_TARGET_PAIRS_32, LIBGNAT_TARGET_PAIRS_64): Define. (LIBGNAT_TARGET_PAIRS): Use LIBGNAT_TARGET_PAIRS_COMMON, and LIBGNAT_TARGET_PAIRS_64 or LIBGNAT_TARGET_PAIRS_32 for -mabi=lp64 or -mabi=ilp32, resp. From-SVN: r246528
Andreas Schwab committed -
2017-03-28 Richard Biener <rguenther@suse.de> PR middle-end/80222 * gimple-fold.c (gimple_fold_indirect_ref): Do not touch TYPE_REF_CAN_ALIAS_ALL references. * fold-const.c (fold_indirect_ref_1): Likewise. * g++.dg/pr80222.C: New testcase. From-SVN: r246527
Richard Biener committed -
2017-03-28 Martin Liska <mliska@suse.cz> PR ipa/80104 * cgraphunit.c (cgraph_node::expand_thunk): Mark argument of a thunk call as DECL_GIMPLE_REG_P when vector or complex type. 2017-03-28 Martin Liska <mliska@suse.cz> PR ipa/80104 * gcc.dg/ipa/pr80104.c: New test. From-SVN: r246525
Martin Liska committed -
The compiler is supposed to have the builtin defined _REENTRANT defined when -pthread is passed, which wasn't done on the ARC architecture. When _REENTRANT is not passed, the C library will not use reentrant functions, and the latest version of ax_pthread.m4 from the autoconf-archive will no longer detect that thread support is available (see https://savannah.gnu.org/patch/?8186). gcc/ 2017-03-28 Claudiu Zissulescu <claziss@synopsys.com> Thomas Petazzoni <thomas.petazzoni@free-electrons.com> * config/arc/arc.h (CPP_SPEC): Add subtarget_cpp_spec. (EXTRA_SPECS): Define. (SUBTARGET_EXTRA_SPECS): Likewise. (SUBTARGET_CPP_SPEC): Likewise. * config/arc/elf.h (EXTRA_SPECS): Renamed to SUBTARGET_EXTRA_SPECS. * config/arc/linux.h (SUBTARGET_CPP_SPEC): Define. Co-Authored-By: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> From-SVN: r246524
Claudiu Zissulescu committed -
vec_select expects in selection a list of subparts. The old ARC SIMD extension instructions were not up-to-date. gcc/ 2017-03-28 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/simdext.md (vst64_insn): Update pattern. (vld32wh_insn): Likewise. (vld32wl_insn): Likewise. (vld64_insn): Likewise. (vld32_insn): Likewise. From-SVN: r246523
Claudiu Zissulescu committed -
PR sanitizer/80067 * fold-const.c (fold_comparison): Use protected_set_expr_location instead of SET_EXPR_LOCATION. * c-c++-common/ubsan/shift-10.c: New test. From-SVN: r246521
Marek Polacek committed -
PR libstdc++/80229 * include/bits/shared_ptr_base.h (__shared_ptr::_M_enable_shared_from_this_with): Change parameters to non-const and then use remove_cv to get unqualified type. * testsuite/20_util/enable_shared_from_this/members/const.cc: Don't cast away constness on object created const. * testsuite/20_util/shared_ptr/cons/80229.cc: New test. From-SVN: r246520
Jonathan Wakely committed -
/home/markus/gcc/gcc/tree.c: In function ‘void inchash::add_expr(const_tree, inchash::hash&, unsigned int)’: /home/markus/gcc/gcc/tree.c:8013:11: warning: name lookup of ‘i’ changed for (i = TREE_OPERAND_LENGTH (t) - 1; i >= 0; --i) ^ /home/markus/gcc/gcc/tree.c:7773:7: warning: matches this ‘i’ under ISO standard rules int i; ^ /home/markus/gcc/gcc/tree.c:7869:16: warning: matches this ‘i’ under old rules for (int i = 0; i < TREE_VEC_LENGTH (t); ++i) ^ From-SVN: r246519
Markus Trippelsdorf committed
-