aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2017-03-17re PR other/80050 (gcc/genmatch.c: PVS-Studio: V590)Richard Biener2-4/+8
2017-03-17 Richard Biener <rguenther@suse.de> PR middle-end/80050 * genmatch.c (parser::next): Remove pointless check for CPP_EOF. (parser::peek): Likewise. From-SVN: r246218
2017-03-17re PR tree-optimization/80048 (gcc/sese.c: PVS-Studio: Improper Release of ↵Richard Biener2-2/+8
Memory Before Removing Last Reference (CWE-401)) 2017-03-17 Richard Biener <rguenther@suse.de> PR tree-optimization/80048 * sese.c (free_sese_info): Properly release rename_map and copied_bb_map elements. From-SVN: r246217
2017-03-17Daily bump.GCC Administrator1-1/+1
From-SVN: r246216
2017-03-16stabilize store mergingAlexandre Oliva2-16/+62
Don't let pointer randomization change the order in which we process store chains. This may cause SSA_NAMEs to be released in different order, and if they're reused later, they may cause differences in SSA partitioning, leading to differences in expand, and ultimately to different code. bootstrap-debug-lean (-fcompare-debug) on i686-linux-gnu has failed in haifa-sched.c since r245196 exposed the latent ordering problem in store merging. In this case, the IR differences (different SSA names selected for copies in out-of-SSA, resulting in some off-by-one differences in pseudos) were not significant enough to be visible in the compiler output. for gcc/ChangeLog * gimple-ssa-store-merging.c (struct imm_store_chain_info): Add linked-list forward and backlinks. Insert on construction, remove on destruction. (class pass_store_merging): Add m_stores_head field. (pass_store_merging::terminate_and_process_all_chains): Iterate over m_stores_head list. (pass_store_merging::terminate_all_aliasing_chains): Likewise. (pass_store_merging::execute): Check for debug stmts first. Push new chains onto the m_stores_head stack. From-SVN: r246213
2017-03-16* decl.c (start_enum): std::byte aliases anything.Jason Merrill3-0/+39
From-SVN: r246212
2017-03-16re PR c++/79797 (ICE with NSDMI, this pointer and constexpr)Jason Merrill2-2/+10
PR c++/79797 * constexpr.c (lookup_placeholder): Tweak. From-SVN: r246210
2017-03-16re PR target/71294 (ICE in gen_add2_insn, at optabs.c:4442 on powerpc64le-linux)Michael Meissner4-7/+92
[gcc] 2017-03-16 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/71294 * config/rs6000/vsx.md (vsx_splat_<mode>, VSX_D iterator): Allow a SPLAT operation on ISA 2.07 64-bit systems that have direct move, but no MTVSRDD support, by doing MTVSRD and XXPERMDI. [gcc/testsuite] 2017-03-16 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/71294 * g++.dg/pr71294.C: New test. From-SVN: r246209
2017-03-16re PR tree-optimization/71437 (Performance regression after r235817)Jeff Law5-160/+193
PR tree-optimization/71437 * tree-ssa-dom.c (dom_opt_dom_walker): Remove thread_across_edge member function. Implementation moved into after_dom_children member function and into the threader's thread_outgoing_edges function. (dom_opt_dom_walker::after_dom_children): Simplify by moving some code into new thread_outgoing_edges. * tree-ssa-threadedge.c (thread_across_edge): Make static and simplify definition. Simplify marker handling (do it here). Assume we always have the available expression and the const/copies tables. (thread_outgoing_edges): New function extracted from tree-ssa-dom.c and tree-vrp.c * tree-ssa-threadedge.h (thread_outgoing_edges): Declare. * tree-vrp.c (equiv_stack): No longer file scoped. (vrp_dom_walker): New class. (vrp_dom_walker::before_dom_children): New member function. (vrp_dom_walker::after_dom_children): Likewise. (identify_jump_threads): Setup domwalker. Use it rather than walking edges in a random order by hand. Simplify setup/finalization. (finalize_jump_threads): Remove. (vrp_finalize): Do not call identify_jump_threads here. (execute_vrp): Do it here instead and call thread_through_all_blocks here too. From-SVN: r246208
2017-03-16re PR tree-optimization/71437 (Performance regression after r235817)Jeff Law5-98/+93
PR tree-optimization/71437 * tree-ssa-dom.c (pfn_simplify): Add basic_block argument. All callers changed. (simplify_stmt_for_jump_threading): Add basic_block argument. All callers changed. (lhs_of_dominating_assert): Moved from here into tree-vrp.c. (dom_opt_dom_walker::thread_across_edge): Remove handle_dominating_asserts argument. All callers changed. (record_temporary_equivalences_from_stmts_at_dest): Corresponding changes. Remove calls to lhs_of_dominating_assert. Other uses of handle_dominating_asserts turn into unconditional code (simplify_control_stmt_condition_1): Likewise. (simplify_control_stmt_condition): Likewise. (thread_through_normal_block, thread_across_edge): Likewise. * tree-ssa-threadedge.h (thread_across_edge): Corresponding changes. * tree-vrp.c (lhs_of_dominating_assert): Move here. Return original object if it is not an SSA_NAME. (simplify_stmt_for_jump_threading): Call lhs_of_dominating_assert before calling into the VRP specific simplifiers. (identify_jump_threads): Remove handle_dominating_asserts argument. From-SVN: r246207
2017-03-16Fix tree-prof/pr66295.cSegher Boessenkool2-0/+5
This testcase can only ever be built on x86 (it needs the "avx*" attributes). This patch skips the test elsewhere. gcc/testsuite/ * gcc.dg/tree-prof/pr66295.c: Skip unless on an x86 target. From-SVN: r246206
2017-03-16re PR fortran/80010 (diagnostics: typo $!)Jakub Jelinek6-9/+19
PR fortran/80010 * parse.c (gfc_ascii_statement): Use !$ACC for ST_OACC_ATOMIC and ST_OACC_END_ATOMIC, instead of !ACC. * trans-decl.c (finish_oacc_declare): Use !$ACC instead of $!ACC. * openmp.c (gfc_match_oacc_declare, gfc_match_oacc_wait, gfc_resolve_oacc_declare): Likewise. * gfortran.dg/goacc/asyncwait-3.f95: Adjust expected diagnostic. From-SVN: r246204
2017-03-16re PR fortran/79886 (ICE in pp_format, at pretty-print.c:681)Jakub Jelinek8-6/+55
PR fortran/79886 * tree-diagnostic.c (default_tree_printer): No longer static. * tree-diagnostic.h (default_tree_printer): New prototype. fortran/ * error.c (gfc_format_decoder): Rename plus argument to set_locus, remove ATTRIBUTE_UNUSED from all arguments, call default_tree_printer if not a Fortran specific spec. * trans-io.c: Include options.h. (gfc_build_st_parameter): Temporarily disable -Wpadded around layout of artificial IO data structures. testsuite/ * gfortran.dg/pr79886.f90: New test. From-SVN: r246203
2017-03-162017-03-16 Tamar Christina <tamar.christina@arm.com>Tamar Christina2-3/+8
* config/aarch64/aarch64-simd.md (*aarch64_simd_mov<mode>) Change ins into fmov. From-SVN: r246190
2017-03-16[AArch64] Use 'x' constraint for vector HFmode multiplication by indexed ↵Kyrylo Tkachov3-5/+13
element instructions * config/aarch64/iterators.md (h_con): Return "x" for V4HF and V8HF. * config/aarch64/aarch64-simd.md (*aarch64_fma4_elt_from_dup<mode>): Use h_con constraint for operand 1. (*aarch64_fnma4_elt_from_dup<mode>): Likewise. (*aarch64_mulx_elt_from_dup<mode>): Likewise for operand 2. From-SVN: r246189
2017-03-15re PR tree-optimization/71437 (Performance regression after r235817)Jeff Law2-2/+54
PR tree-optimization/71437 * tree-ssa-dom.c (derive_equivalences_from_bit_ior): New function. (record_temporary_equivalences): Use it. From-SVN: r246187
2017-03-15re PR tree-optimization/71437 (Performance regression after r235817)Jeff Law4-309/+329
PR tree-optimization/71437 * tree-ssa-dom.c (struct cond_equivalence): Moved from here into tree-ssa-scopedtables. (lookup_avail_expr, build_and_record_new_cond): Likewise. (record_conditions, record_cond, vuse_eq): Likewise. (record_edge_info): Adjust to API tweak of record_conditions. (simplify_stmt_for_jump_threading): Similarly for lookup_avail_expr. (record_temporary_equivalences, optimize_stmt): Likewise. (eliminate_redundant_computations): Likewise. (record_equivalences_from_stmt): Likewise. * tree-ssa-scopedtables.c: Include options.h and params.h. (vuse_eq): New function, moved from tree-ssa-dom.c (build_and_record_new_cond): Likewise. (record_conditions): Likewise. Accept vector of conditions rather than edge_equivalence structure for first argument. for the first argument. (avail_exprs_stack::lookup_avail_expr): New member function, moved from tree-ssa-dom.c. (avail_exprs_stack::record_cond): Likewise. * tree-ssa-scopedtables.h (struct cond_equivalence): Moved here from tree-ssa-dom.c. (avail_exprs_stack): Add new member functions lookup_avail_expr and record_cond. (record_conditions): Declare. From-SVN: r246186
2017-03-16Daily bump.GCC Administrator1-1/+1
From-SVN: r246185
2017-03-15re PR target/80017 (ICE: Max. number of generated reload insns per insn is ↵Vladimir Makarov2-0/+15
achieved (90)) 2017-03-15 Vladimir Makarov <vmakarov@redhat.com> PR target/80017 * lra-constraints.c (process_alt_operands): Increase reject for reloading an input/output operand. From-SVN: r246181
2017-03-15PR c++/80043 - ICE with -fpermissiveJason Merrill3-1/+28
* typeck.c (convert_for_assignment): Handle instantiate_type not giving an error. From-SVN: r246180
2017-03-15re PR target/79038 (Improve PowerPC ISA 3.0 conversion between integers and ↵Michael Meissner4-0/+121
hardware _Float128) [gcc] 2017-03-15 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/79038 * config/rs6000/rs6000.md (float<QHI:mode><IEEE128:mode>2): Define insns to convert from signed/unsigned char/short to IEEE 128-bit floating point. (floatuns<QHI:mode><IEEE128:mode>2): Likewise. [gcc/testsuite] 2017-03-15 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/79038 * gcc.target/powerpc/pr79038-1.c: New test. From-SVN: r246178
2017-03-15* de.po: Update.Joseph Myers2-366/+373
From-SVN: r246177
2017-03-15rs6000: Do not xfail nint_2.f90 on Linux systemsSegher Boessenkool2-2/+6
It was XFAILed because there was a bug in glibc, but that bug was fixed nine years ago. Nowadays everyone uses a version of glibc with the bug fixed, so we should no longer XFAIL the test. gcc/testsuite/ PR fortran/33271 * gfortran.dg/nint_2.f90: Do not xfail powerpc*-*-linux*. From-SVN: r246174
2017-03-15Fix translation issue with character length * errors (PR fortran/79860)David Malcolm2-4/+11
gcc/fortran/ChangeLog: PR fortran/79860 * resolve.c (resolve_contained_fntype): Make error messages more amenable to translation. From-SVN: r246170
2017-03-15[gcc, testsuite] Don't xfail on armJiong Wang2-2/+7
PR testsuite/79356 * gcc.dg/attr-alloc_size-11.c: Don't xfail on arm. From-SVN: r246167
2017-03-15re PR target/80019 (ICE in ix86_vector_duplicate_value, at ↵Uros Bizjak4-1/+31
config/i386/i386.c:42584) PR target/80019 * config/i386/i386.c (ix86_vector_duplicate_value): Create subreg of inner mode for values already in registers. testsuite/ChangeLog: PR target/80019 * gcc.target/i386/pr80019.c: New test. From-SVN: r246161
2017-03-15c6x.c (hwloop_optimize): Handle case where the old iteration reg is used ↵Bernd Schmidt2-1/+7
after the loop. * config/c6x/c6x.c (hwloop_optimize): Handle case where the old iteration reg is used after the loop. From-SVN: r246160
2017-03-15* c-parser.c (c_parser_enum_specifier): Remove redundant line.Marek Polacek2-1/+4
From-SVN: r246156
2017-03-15Removed unused dg-error.Martin Liska2-1/+5
2017-03-15 Martin Liska <mliska@suse.cz> * gcc.dg/tree-prof/pr66295.c: Removed unused dg-error. From-SVN: r246154
2017-03-14re PR tree-optimization/79800 (wrong snprintf result range with precision in ↵Martin Sebor5-31/+85
a narrow negative-positive range) PR tree-optimization/79800 * gimple-ssa-sprintf.c (format_floating: Add argument. Handle precision in negative-positive range. (format_floating): Call non-const overload with adjusted precision. PR tree-optimization/79800 * gcc.dg/tree-ssa/builtin-sprintf-warn-15.c: Add test cases. * gcc.dg/tree-ssa/pr79800.c: New test. From-SVN: r246151
2017-03-15re PR target/79947 (ICE in rs6000_emit_swsqrt at ↵Michael Meissner4-1/+25
gcc/config/rs6000/rs6000.c:37570) [gcc] 2017-03-14 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/79947 * config/rs6000/rs6000.h (TARGET_FRSQRTES): Add check for -mpowerpc-gfxopt. [gcc/testsuite] 2017-03-14 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/79947 * gcc.target/powerpc/pr79947.c: New test. From-SVN: r246150
2017-03-15Daily bump.GCC Administrator1-1/+1
From-SVN: r246149
2017-03-14re PR middle-end/80020 (gcc confused about aligned_alloc argument order)Martin Sebor9-12/+55
PR middle-end/80020 * builtin-attrs.def (ATTR_ALLOC_SIZE_2_NOTHROW_LIST): New macro. * builtins.def (aligned_alloc): Use it. PR middle-end/80020 * gcc.dg/attr-alloc_size-6.c: Correct aligned_alloc argument order. * gcc.dg/attr-alloc_size-7.c: Same. * gcc.dg/attr-alloc_size-9.c: Same. * gcc.dg/builtin-alloc-size.c: Same. * gcc.dg/pr80020.c: New test. From-SVN: r246145
2017-03-14re PR c/79936 (ICE with -Walloc-size-larger-than=32767)Martin Sebor3-0/+10
PR c/79936 * Makefile.in (GTFILES): Add calls.c. * calls.c: Include "gt-calls.h". From-SVN: r246144
2017-03-14re PR rtl-optimization/79728 (ICE in setup_pressure_classes, at ira.c:912)Bernd Schmidt6-7/+45
PR rtl-optimization/79728 * regs.h (struct target_regs): New field x_contains_allocatable_regs_of_mode. (contains_allocatable_regs_of_mode): New macro. * reginfo.c (init_reg_sets_1): Initialize it, and change contains_reg_of_mode so it includes global regs as well. * reload.c (push_reload): Use contains_allocatable_regs_of_mode rather than contains_regs_of_mode. PR rtl-optimization/79728 * gcc.target/i386/sse-globalreg.c: New test. From-SVN: r246138
2017-03-14Document options that can't be combined with -fcheck-pointer-bounds.Martin Liska2-4/+13
2017-03-14 Martin Liska <mliska@suse.cz> * doc/invoke.texi: Document options that can't be combined with -fcheck-pointer-bounds. From-SVN: r246130
2017-03-14Document -Wchkp (PR middle-end/79831).Martin Liska2-1/+12
2017-03-14 Martin Liska <mliska@suse.cz> PR middle-end/79831 * doc/invoke.texi (-Wchkp): Document the option. From-SVN: r246129
2017-03-14PR c++/79393 DR 1658 workaroundNathan Sidwell3-16/+47
PR c++/79393 DR 1658 workaround * method.c (synthesized_method_base_walk): Inihibit abstract class virtual base access check here. (synthesized_method_walk): Not here. From-SVN: r246126
2017-03-14Install gcov-dump.Martin Liska2-0/+14
2017-03-14 Martin Liska <mliska@suse.cz> * Makefile.in: Install gcov-dump. From-SVN: r246125
2017-03-14Do not ICE on an invalid input for MV.Martin Liska2-4/+6
2017-03-14 Martin Liska <mliska@suse.cz> * multiple_target.c (expand_target_clones): Bail out for an invalid attribute. From-SVN: r246124
2017-03-14alias.c (struct alias_set_entry): Pack properly.Richard Biener18-75/+96
2017-03-14 Richard Biener <rguenther@suse.de> * alias.c (struct alias_set_entry): Pack properly. * cfgloop.h (struct loop): Likewise. * cse.c (struct set): Likewise. * ipa-utils.c (struct searchc_env): Likewise. * loop-invariant.c (struct invariant): Likewise. * lra-remat.c (struct cand): Likewise. * recog.c (struct change_t): Likewise. * rtl.h (struct address_info): Likewise. * symbol-summary.h (function_summary): Likewise. * tree-loop-distribution.c (struct partition): Likewise. * tree-object-size.c (struct object_size_info): Likewise. * tree-ssa-loop-ivopts.c (struct cost_pair): Likewise. * tree-ssa-threadupdate.c (struct ssa_local_info_t): Likewise. * tree-vect-data-refs.c (struct _vect_peel_info): Likewise. * tree-vect-slp.c (struct _slp_oprnd_info): Likewise. * tree-vect-stmts.c (struct simd_call_arg_info): Likewise. * tree-vectorizer.h (struct _loop_vec_info): Likewise. (struct _stmt_vec_info): Likewise. From-SVN: r246121
2017-03-14Verify that target can create a dispatcher call (PR target/79892).Martin Liska2-0/+13
2017-03-14 Martin Liska <mliska@suse.cz> PR target/79892 * multiple_target.c (create_dispatcher_calls): Check that a target can create a function dispatcher. From-SVN: r246120
2017-03-14Fix multiple target clones nodes (PR lto/66295).Martin Liska4-0/+46
2017-03-14 Martin Liska <mliska@suse.cz> PR lto/66295 * multiple_target.c (expand_target_clones): Drop local.local flag for default implementation. 2017-03-14 Martin Liska <mliska@suse.cz> PR lto/66295 * gcc.dg/tree-prof/pr66295.c: New test. From-SVN: r246119
2017-03-14s-osinte-linux.ads (struct_sigaction): Use correct type for sa_flags.James Cowgill2-3/+6
2017-03-14 James Cowgill <James.Cowgill@imgtec.com> * s-osinte-linux.ads (struct_sigaction): Use correct type for sa_flags. From-SVN: r246118
2017-03-14re PR tree-optimization/80030 (valgrind error in vect_get_slp_defs at ↵Richard Biener2-0/+7
tree-vect-slp.c:3360) 2017-03-14 Richard Biener <rguenther@suse.de> PR tree-optimization/80030 * tree-vect-stmts.c (vectorizable_store): Plug memleak. From-SVN: r246117
2017-03-14Use gcc_fallthrough() instead of __attribute__((fallthrough)Kito Cheng2-2/+7
Without this my build breaks on older compilers like GCC-5.4. gcc/ChangeLog: 2017-03-13 Kito Cheng <kito.cheng@gmail.com> * config/riscv/riscv.c (riscv_emit_float_compare>: Use gcc_fallthrough() instead of __attribute__((fallthrough)); From-SVN: r246116
2017-03-14Daily bump.GCC Administrator1-1/+1
From-SVN: r246115
2017-03-13* es.po: Update.Joseph Myers2-203/+152
From-SVN: r246112
2017-03-13gcc.texi: Remove "up" link to (DIR).Gerald Pfeifer3-2/+7
* doc/gcc.texi: Remove "up" link to (DIR). * doc/gccint.texi: Ditto. From-SVN: r246111
2017-03-13install.texi (Specific): Remove reference to binutils 2.13.Gerald Pfeifer2-2/+5
* doc/install.texi (Specific) <avr>: Remove reference to binutils 2.13. From-SVN: r246110
2017-03-13* de.po, fr.po: Update.Joseph Myers3-3312/+2705
From-SVN: r246106