aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-03-202017-03-12 Nicolas Koenig <koenigni@student.ethz.ch>Nicolas Koenig
PR fortran/39239 * symbol.c (check_conflict): report an error if an EQUIVALENCE variable is BIND(C). 2017-03-12 Nicolas Koenig <koenigni@student.ethz.ch> PR fortran/39239 * gfortran.dg/equiv_constraint_bind_c.f90: New test. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246284 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-20RISC-V: Don't prefer FP_REGS for integersPalmer Dabbelt
On RISC-V we can't store integers in floating-point registers as this is forbidden by the ISA. We've always disallowed this, but we were setting the preferred mode to FP_REGS for some integer modes. This caused the LRA to blow up with some hard to read error messages. This patch removes the prefered mode hook, as the right thing to do here is nothing. Thanks to Kito for finding the bug, and mpf for the fix. See also <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79912>. PR target/79912 git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246283 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-20Use more conservative fences on RISC-VPalmer Dabbelt
The RISC-V memory model is still in the process of being formally specified, so for now we're going to be safe and add the I/O bits to userspace fences because there's no way to know if userspace is touching memory-mapped I/O regions at compile time. This will have no impact on existing microarchitecutres because they treat all fences conservatively. gcc/ChangeLog: 2017-03-17 Palmer Dabbelt <palmer@dabbelt.com> * config/riscv/riscv.c (riscv_print_operand): Use "fence iorw,ow". * config/riscv/sync.mc (mem_thread_fence_1): Use "fence iorw,iorw". git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246282 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-20Disable test inapplicable to RISC-VPalmer Dabbelt
The test is coupled to the branch cost model. gcc/testsuite/ChangeLog: * gcc.dg/tree-ssa/ssa-thread-14.c: Adjust target selector. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246281 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-20Add RISC-V MaintainersPalmer Dabbelt
2017-03-20 Palmer Dabbelt <palmer@dabbelt.com> * MAINTAINERS (CPU Port Maintainers): Add Kito Cheng, Palmer Dabbelt, and Andrew Waterman as the RISC-V maintainers. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246280 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-20 PR c++/80059 - ICE with noexcept and __transaction_atomicMarek Polacek
* except.c (build_must_not_throw_expr): Call instantiate_non_dependent_expr_sfinae. * g++.dg/tm/pr80059-2.C: New test. * g++.dg/tm/pr80059.C: New test. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246279 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-20 PR sanitizer/80063Marek Polacek
* asan.c (DEF_SANITIZER_BUILTIN): Use do { } while (0). git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246278 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-202017-03-20 Richard Biener <rguenther@suse.de>Richard Biener
PR tree-optimization/80113 * graphite-isl-ast-to-gimple.c (copy_loop_phi_nodes): Do not allocate extra SSA name for PHI def. (add_close_phis_to_outer_loops): Likewise. (add_close_phis_to_merge_points): Likewise. (copy_loop_close_phi_args): Likewise. (copy_cond_phi_nodes): Likewise. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246277 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-20MPX: fix PR middle-end/79753Martin Liska
2017-03-20 Martin Liska <mliska@suse.cz> PR middle-end/79753 * tree-chkp.c (chkp_build_returned_bound): Do not build returned bounds for a LHS that's not a BOUNDED_P type. 2017-03-20 Martin Liska <mliska@suse.cz> PR middle-end/79753 * gcc.target/i386/mpx/pr79753.c: New test. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246276 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-20Fix *_CST ICEs connected to MPX.Martin Liska
2017-03-20 Martin Liska <mliska@suse.cz> PR target/79769 PR target/79770 * tree-chkp.c (chkp_find_bounds_1): Handle REAL_CST, COMPLEX_CST and VECTOR_CST. 2017-03-20 Martin Liska <mliska@suse.cz> PR target/79769 PR target/79770 * g++.dg/pr79769.C: New test. * gcc.target/i386/mpx/pr79770.c: New test. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246275 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-20S/390: PR78857: Don't use load and test if result is live.Andreas Krebbel
The FP load and test instruction should not be used for a comparison if the target operand is being used afterwards. It unfortunately turns SNaNs into QNaNs. gcc/ChangeLog: 2017-03-20 Andreas Krebbel <krebbel@linux.vnet.ibm.com> PR target/78857 * config/s390/s390.md ("cmp<mode>_ccs_0"): Add a clobber of the target operand. A new splitter adds the clobber statement in case the target operand is dead anyway. gcc/testsuite/ChangeLog: 2017-03-20 Andreas Krebbel <krebbel@linux.vnet.ibm.com> PR target/78857 * gcc.target/s390/load-and-test-fp-1.c: New test. * gcc.target/s390/load-and-test-fp-2.c: New test. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246274 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-20 PR c++/80084 - wrong C++17 decomposition by reference of parameter.Jason Merrill
* decl.c (cp_finish_decomp): Don't pull out the DECL_INITIAL of a reference decomposition. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246273 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-20 PR c++/80077 - error with constexpr and -fno-elide-constructors.Jason Merrill
* constexpr.c (cxx_eval_call_expression): Set ctx->call while expanding trivial constructor. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246272 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-20Daily bump.GCC Administrator
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246271 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-19 * doc/install.texi (Specific) <sparc-*-linux*>: No longer refer Gerald Pfeifer
to age-old versions of binutils and glibc. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246266 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-19Kill my doppelg\"angerSegher Boessenkool
* doc/contrib.texi (Contributors): Remove duplicate entry for myself. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246265 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-19Daily bump.GCC Administrator
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246264 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-182017-03-18 Nicolas Koenig <koenigni@gcc.gnu.org>Nicolas Koenig
* MAINTAINERS: Add self to Write After Approval git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246261 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-18 * doc/contrib.texi (Contributors): Add Segher Boessenkool.Gerald Pfeifer
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246260 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-18 * doc/xml/manual/appendix_contributing.xml: Convert link toGerald Pfeifer
ansi.org to https. Update link to the C++ standard at ansi.org. * doc/xml/faq.xml: Remove information redundant with the above; instead add a reference. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246259 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-18 * config.guess: Import latest from upstream.Gerald Pfeifer
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246258 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-18 * MAINTAINERS (Write After Approval): Remove entries that areGerald Pfeifer
already covered under Reviewers. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246257 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-182017-03-18 Paul Thomas <pault@gcc.gnu.org>Paul Thomas
PR fortran/79676 * module.c (mio_symbol_attribute): Remove reset of the flag 'no_module_procedures'. (check_for_module_procedures): New function. Move declaration of 'no_module_procedures' to above it. (gfc_dump_module): Traverse namespace calling new function. 2017-03-18 Paul Thomas <pault@gcc.gnu.org> PR fortran/79676 * gfortran.dg/submodule_28.f08 : New test. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246256 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-182017-03-18 Paul Thomas <pault@gcc.gnu.org>Paul Thomas
PR fortran/71838 * symbol.c (check_conflict): A dummy procedure in a submodule, module procedure is not an error. (gfc_add_flavor): Ditto. 2017-03-18 Paul Thomas <pault@gcc.gnu.org> PR fortran/71838 * gfortran.dg/submodule_26.f08 : New test. * gfortran.dg/submodule_27.f08 : New test. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246255 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-18 * doc/install.texi (Specific) <arm-*-eabi>: Remove oldGerald Pfeifer
requirement for binutils 2.13. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246254 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-18Fix aarch64 bootstrap compare failure.Jim Wilson
gcc/ * combine.c (try_combine): Delete redundant i1 test. Call prev_nonnote_nondebug_insn instead of prev_nonnote_insn. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246253 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-18Daily bump.GCC Administrator
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246252 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17 * c-parser.c: Add C11 references.Marek Polacek
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246249 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-172017-03-17 Thomas Koenig <tkoenig@gcc.gnu.org>Thomas Koenig
PR libfortran/79956 * m4/reshape.m4 (reshape_'rtype_ccode`): Correct use of GFC_ASSERT. * generated/reshape_c10.c: Regenerated. * generated/reshape_c16.c: Regenerated. * generated/reshape_c4.c: Regenerated. * generated/reshape_c8.c: Regenerated. * generated/reshape_i16.c: Regenerated. * generated/reshape_i4.c: Regenerated. * generated/reshape_i8.c: Regenerated. * generated/reshape_r10.c: Regenerated. * generated/reshape_r16.c: Regenerated. * generated/reshape_r4.c: Regenerated. * generated/reshape_r8.c: Regenerated. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246248 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17Fix alignment bugs in std::codecvt_utf16Jonathan Wakely
* src/c++11/codecvt.cc (range): Add non-type template parameter and define oerloaded operators for reading and writing code units. (range<Elem, false>): Define partial specialization for accessing wide characters in potentially unaligned byte ranges. (ucs2_span(const char16_t*, const char16_t*, ...)) (ucs4_span(const char16_t*, const char16_t*, ...)): Change parameters to range<const char16_t, false> in order to avoid unaligned reads. (__codecvt_utf16_base<char16_t>::do_out) (__codecvt_utf16_base<char32_t>::do_out) (__codecvt_utf16_base<wchar_t>::do_out): Use range specialization for unaligned data to avoid unaligned writes. (__codecvt_utf16_base<char16_t>::do_in) (__codecvt_utf16_base<char32_t>::do_in) (__codecvt_utf16_base<wchar_t>::do_in): Likewise for writes. Return error if there are unprocessable trailing bytes. (__codecvt_utf16_base<char16_t>::do_length) (__codecvt_utf16_base<char32_t>::do_length) (__codecvt_utf16_base<wchar_t>::do_length): Pass arguments of type range<const char16_t, false> to span functions. * testsuite/22_locale/codecvt/codecvt_utf16/misaligned.cc: New test. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246245 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17 PR c++/78345 - ICE initializing array from lambda.Jason Merrill
* init.c (build_aggr_init): Check array initializer. (build_vec_init): Check the type of a CONSTRUCTOR. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246244 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17RISC-V documentation cleanupsPalmer Dabbelt
A recent mailing list post about install.texi cleanup suggested I take a look at ours, and there were a few problems: * No table of contents entries * Not alphabetically ordered * Missing a note about requiring binutils-2.28 gcc/ChangeLog: 2017-03-17 Palmer Dabbelt <palmer@dabbelt.com * doc/install.texi (Specific) <riscv32-*-elf>: Add riscv32-*-elf, riscv32-*-linux, riscv64-*-elf, riscv64-*-linux to the table of contents. <riscv64-*-elf>: Re-arrange section <riscv32-*-elf>: Add a note about requiring binutils 2.28. <riscv32-*-linux>: Likewise. <riscv64-*-elf>: Likewise <riscv64-*-linux>: Likewise. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246243 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17 PR c++/80073 - C++17 ICE with virtual base.Jason Merrill
* decl.c (xref_basetypes): Also check for indirect vbases. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246242 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-172017-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>Jerry DeLisle
PR fortran/79841 * openmp.c (check_symbol_not_pointer): Adjust diagnostics. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246241 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17[aarch64] Fix typo in aarch64.opt (dummping -> dumping).Richard Earnshaw
PR target/80052 * aarch64.opt(verbose-cost-dump): Fix typo. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246229 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17 PR target/79951Pat Haugen
* config/rs6000/rs6000.md (copysign<mode>3_fcpsgn): Test for VECTOR_UNIT_VSX_P (<MODE>mode) too. * gcc.target/powerpc/pr79951.c: New. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246228 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17 * reload.c (find_reloads): When reloading a nonoffsettable address,Bernd Schmidt
use RELOAD_OTHER for it and its address reloads. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246227 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17 PR rtl-optimization/79910Bernd Schmidt
* combine.c (record_used_regs): New static function. (try_combine): Handle situations where there is an additional instruction between I2 and I3 which needs to have a LOG_LINK updated. PR rtl-optimization/79910 * gcc.dg/torture/pr79910.c: New test. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246226 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17 PR tree-optimization/71437Jeff Law
* tree-vrp.c (simplify_stmt_for_jump_threading): Lookup the conditional in the hash table first. (vrp_dom_walker::before_dom_children): Extract condition from ASSERT_EXPR. Record condition, its inverion and any implied conditions as well. PR tree-optimization/71437 * gcc.dg/tree-ssa/pr71437.c: New test. * gcc.dg/tree-ssa/20040305-1.c: Test earlier dump. * gcc.dg/tree-ssa/ssa-dom-thread-4.c: Adjust for jump threads now caught by VRP, but which were previously caught by DOM. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246225 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17 PR tree-optimization/80079Marek Polacek
* gimple-ssa-store-merging.c (class pass_store_merging): Initialize m_stores_head. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246224 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-172017-03-17 Richard Biener <rguenther@suse.de>Richard Biener
PR middle-end/80075 * tree-eh.c (stmt_could_throw_1_p): Only handle gimple assigns. Properly verify the LHS before the RHS possibly claims to be handled. (stmt_could_throw_p): Hande gimple conds fully here. Clobbers do not throw. * g++.dg/torture/pr80075.C: New testcase. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246223 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17Document -fipa-vrpMartin Jambor
2017-03-17 Martin Jambor <mjambor@suse.cz> * doc/invoke.texi (Option Options): Include -fipa-vrp in the list. (List of -O2 options): Likewise. (-fipa-bit-cp): Replace "ipa" with "interprocedural." (-fipa-vrp) New. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246221 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17Print bug url for gcov-dump --helpTom de Vries
2017-03-17 Tom de Vries <tom@codesourcery.com> * gcov-dump.c (print_usage): Print bug_report_url. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246219 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-172017-03-17 Richard Biener <rguenther@suse.de>Richard Biener
PR middle-end/80050 * genmatch.c (parser::next): Remove pointless check for CPP_EOF. (parser::peek): Likewise. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246218 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-172017-03-17 Richard Biener <rguenther@suse.de>Richard Biener
PR tree-optimization/80048 * sese.c (free_sese_info): Properly release rename_map and copied_bb_map elements. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246217 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-17Daily bump.GCC Administrator
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246216 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-16stabilize store mergingAlexandre Oliva
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. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246213 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-16 * decl.c (start_enum): std::byte aliases anything.Jason Merrill
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246212 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-16 * init.c (cpp_init_builtins): Update __cplusplus for C++17.Jason Merrill
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246211 138bc75d-0d04-0410-961f-82ee72b054a4
2017-03-16 PR c++/79797Jason Merrill
* constexpr.c (lookup_placeholder): Tweak. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@246210 138bc75d-0d04-0410-961f-82ee72b054a4