aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-09-15re PR tree-optimization/77514 (ICE in VN_INFO_GET, at tree-ssa-sccvn.c:406 ↵Richard Biener4-1/+47
w/ -O2 (and above)) 2016-09-15 Richard Biener <rguenther@suse.de> PR tree-optimization/77514 * tree-ssa-pre.c (create_expression_by_pieces): Handle garbage only forced_stmts sequence. * gcc.dg/torture/pr77514.c: New testcase. From-SVN: r240153
2016-09-15Iterator to visit SSAKugan Vivekanandarajah16-132/+136
Iterator to visit SSA gcc/ChangeLog: 2016-09-15 Kugan Vivekanandarajah <kuganv@linaro.org> * tree-ssanames.h (FOR_EACH_SSA_NAME): New. * cfgexpand.c (update_alias_info_with_stack_vars): Use FOR_EACH_SSA_NAME to iterate over SSA variables. (pass_expand::execute): Likewise. * omp-simd-clone.c (ipa_simd_modify_function_body): Likewise. * tree-cfg.c (dump_function_to_file): Likewise. * tree-into-ssa.c (pass_build_ssa::execute): Likewise. (update_ssa): Likewise. * tree-ssa-alias.c (dump_alias_info): Likewise. * tree-ssa-ccp.c (ccp_finalize): Likewise. * tree-ssa-coalesce.c (build_ssa_conflict_graph): Likewise. (create_outofssa_var_map): Likewise. (coalesce_ssa_name): Likewise. * tree-ssa-operands.c (dump_immediate_uses): Likewise. * tree-ssa-pre.c (compute_avail): Likewise. * tree-ssa-sccvn.c (init_scc_vn): Likewise. (scc_vn_restore_ssa_info): Likewise. (free_scc_vn): Likwise. (run_scc_vn): Likewise. * tree-ssa-structalias.c (compute_points_to_sets): Likewise. * tree-ssa-ter.c (new_temp_expr_table): Likewise. * tree-ssa-copy.c (fini_copy_prop): Likewise. * tree-ssa.c (verify_ssa): Likewise. From-SVN: r240152
2016-09-15Daily bump.GCC Administrator1-1/+1
From-SVN: r240151
2016-09-14re PR c++/77549 (ICE on invalid C++ code that references undeclared variable)Jakub Jelinek4-6/+103
PR c++/77549 * name-lookup.c (consider_binding_level): Look through TREE_LIST and OVERLOAD. * g++.dg/lookup/pr77549.C: New test. From-SVN: r240148
2016-09-14libgo: fix typo in configure.ac (PCQUANTUm -> PCQUANTUM)Ian Lance Taylor3-3/+3
Reviewed-on: https://go-review.googlesource.com/29154 From-SVN: r240146
2016-09-14Infer architecture from ABI for mips-mti* and mips-img* triplets.Matthew Fortune2-0/+15
gcc/ * config.gcc (mips*-mti-elf*, mips*-mti-linux*): Set mips32r2 and mips64r2 as default 32-bit and 64-bit architectures. (mips*-img-elf*, mips*-img-linux*): Set mips32r6 and mips64r6 as default 32-bit and 64-bit architectures. From-SVN: r240145
2016-09-14simplify.c (gfc_simplify_repeat): Fix a misplaced closing ')'.Bernd Edlinger2-1/+5
2016-09-14 Bernd Edlinger <bernd.edlinger@hotmail.de> * simplify.c (gfc_simplify_repeat): Fix a misplaced closing ')'. From-SVN: r240142
2016-09-14typeck.c (cp_build_unary_op): Diagnose incrementing boolean expressions.Marek Polacek24-25/+93
* typeck.c (cp_build_unary_op): Diagnose incrementing boolean expressions. Tweak an error message. * c-c++-common/gomp/atomic-12.c: Use -Wno-deprecated. * c-c++-common/gomp/atomic-13.c: Likewise. * c-c++-common/gomp/atomic-14.c: Likewise. * g++.dg/cpp1y/lambda-init11.C: Remove invalid code. * g++.dg/cpp1z/bool-increment1.C: New test. * c-c++-common/pr60439.c: Add dg-warning. * g++.dg/expr/bitfield4.C: Likewise. * g++.dg/expr/bitfield5.C: Likewise. * g++.dg/expr/bitfield6.C: Likewise. * g++.dg/expr/bool1.C: Likewise. * g++.dg/expr/bool3.C: Likewise. * g++.dg/expr/lval3.C: Likewise. * g++.dg/expr/lval4.C: Likewise. * g++.old-deja/g++.jason/bool5.C: Likewise. * g++.dg/expr/bitfield3.C: Adjust dg-error. * g++.dg/other/error18.C: Likewise. * g++.dg/gomp/atomic-14.C: Likewise. libgomp/ * testsuite/libgomp.c++/atomic-3.C: Use -Wno-deprecated. libstdc++-v3/ * testsuite/23_containers/vector/debug/insert6_neg.cc: Use -Wno-deprecated. From-SVN: r240141
2016-09-14loop-unroll.c (unroll_loop_runtime_iterations): Set probability of succ edge.Pat Haugen2-1/+5
* loop-unroll.c (unroll_loop_runtime_iterations): Set probability of succ edge. From-SVN: r240140
2016-09-14c-common.c (check_cxx_fundamental_alignment_constraints): Don't limit ↵Jason Merrill3-37/+23
FIELD_DECL, either. * c-common.c (check_cxx_fundamental_alignment_constraints): Don't limit FIELD_DECL, either. From-SVN: r240139
2016-09-14re PR c++/77539 (gcc-5/6: comparison of array to nullptr failure in ↵Nathan Sidwell2-0/+19
constexpr (fixed by r235506 on trunk)) PR c++/77539 * g++.dg/cpp1y/pr77539.C: New. From-SVN: r240138
2016-09-14c-common.c (c_common_truthvalue_conversion): Use false instead of 0.Marek Polacek16-64/+103
* c-common.c (c_common_truthvalue_conversion): Use false instead of 0. * c-common.h (build_unary_op): Change nonconvert parameter type to bool. * c-omp.c (c_finish_omp_atomic): Use false instead of 0. * c-array-notation.c (create_cmp_incr): Use false instead of 0. (fix_array_notation_expr): Likewise. * c-decl.c (finish_decl): Likewise. * c-parser.c (c_parser_postfix_expression_after_primary): Likewise. * c-typeck.c (array_to_pointer_conversion): Use true instead of 1. (function_to_pointer_conversion): Use false instead of 0. (convert_lvalue_to_rvalue): Likewise. (parser_build_unary_op): Likewise. (build_atomic_assign): Likewise. (build_unary_op): Change nonconvert parameter type to bool, use true/false instead of 1/0. (build_binary_op): Use true instead of 1. * cp-tree.h (cp_build_unary_op): Change nonconvert parameter type to bool. * decl2.c (one_static_initialization_or_destruction): Use true instead of 1. * init.c (build_vec_init): Use false instead of 0. * pt.c (tsubst_copy_and_build): Likewise. * semantics.c (simplify_loop_decl_cond): Likewise. * typeck.c (rationalize_conditional_expr): Likewise. (cp_build_binary_op): Use true instead of 1. (cp_build_unary_op): Change nonconvert parameter type to bool. Use true instead of 1. (build_unary_op): Change nonconvert parameter type to bool. (unary_complex_lvalue): Use false instead of 0. From-SVN: r240137
2016-09-14Fix dg-require before dg-run directives in testsuite.Christophe Lyon30-29/+66
libstdc++-v3/ChangeLog: 2016-09-14 Christophe Lyon <christophe.lyon@linaro.org> * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Move dg-do directive before dg-skip. * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: Move dg-do directive before dg-require. * testsuite/21_strings/debug/self_move_assign_neg.cc: Likewise. * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise. * testsuite/23_containers/vector/debug/60587_neg.cc: Likewise. * testsuite/23_containers/vector/debug/assign1_neg.cc: Likewise. * testsuite/23_containers/vector/debug/assign2_neg.cc: Likewise. * testsuite/23_containers/vector/debug/assign3_neg.cc: Likewise. * testsuite/23_containers/vector/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/vector/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/vector/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert1_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise. * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Likewise. * testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc: Likewise. * testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise. * testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise. * testsuite/27_io/objects/char/12048-5.cc: Likewise. * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise. * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise. gcc/testsuite/ChangeLog: 2016-09-14 Christophe Lyon <christophe.lyon@linaro.org> * g++.dg/cpp0x/lambda/lambda-mangle.C: Move dg-do directive before dg-require. * g++.dg/ext/builtin_alloca.C: Likewise. * g++.dg/template/spec35.C: Likewise. * gcc.dg/builtins-68.c: Likewise. * gcc.misc-tests/gcov-13.c: Likewise. * gcc.misc-tests/gcov-14.c: Likewise. From-SVN: r240135
2016-09-14dec_structure_14.f90: New testcase.Jim MacArthur2-0/+22
2016-09-13 Jim MacArthur <jim.macarthur@codethink.co.uk> * gcc/testsuite/gfortran.dg/dec_structure_14.f90: New testcase. From-SVN: r240134
2016-09-14Fix TARGET_LRA_P descriptionSegher Boessenkool3-3/+9
2016-09-14 Segher Boessenkool <segher@kernel.crashing.org> * target.def (lra_p): Change commentary (for the manual) for the new default. * doc/tm.texi: Regenerate. From-SVN: r240133
2016-09-14Delete TARGET_LRA_P from those targets that set it to "true"Segher Boessenkool5-12/+7
A few targets already always want LRA; those then do not need to override the default anymore. 2016-09-14 Segher Boessenkool <segher@kernel.crashing.org> * config/aarch64/aarch64.c (TARGET_LRA_P): Delete macro. * config/arm/arm.c (TARGET_LRA_P): Delete macro. * config/i386/i386.c (TARGET_LRA_P): Delete macro. * config/nds32/nds32.c (TARGET_LRA_P): Delete macro. From-SVN: r240132
2016-09-14Change the default of TARGET_LRA_P to trueSegher Boessenkool2-1/+5
Since all targets now define TARGET_LRA_P, this does not change behaviour for any existing target. Newly added ports will by default use LRA now. 2016-09-14 Segher Boessenkool <segher@kernel.crashing.org> * targhooks.c (default_lra_p): Return true instead of false. From-SVN: r240131
2016-09-14Put a TARGET_LRA_P into every targetSegher Boessenkool37-0/+146
This patch adds a TARGET_LRA_P (defined to hook_bool_void_false) to every target that didn't yet override the hook. No functional change. 2016-09-14 Segher Boessenkool <segher@kernel.crashing.org> * config/alpha/alpha.c (TARGET_LRA_P): New macro, defined to hook_bool_void_false. * config/avr/avr.c: Ditto. * config/bfin/bfin.c: Ditto. * config/c6x/c6x.c: Ditto. * config/cr16/cr16.c: Ditto. * config/cris/cris.c: Ditto. * config/epiphany/epiphany.c: Ditto. * config/fr30/fr30.c: Ditto. * config/frv/frv.c: Ditto. * config/h8300/h8300.c: Ditto. * config/ia64/ia64.c: Ditto. * config/iq2000/iq2000.c: Ditto. * config/lm32/lm32.c: Ditto. * config/m32c/m32c.c: Ditto. * config/m32r/m32r.c: Ditto. * config/m68k/m68k.c: Ditto. * config/mcore/mcore.c: Ditto. * config/microblaze/microblaze.c: Ditto. * config/mmix/mmix.c: Ditto. * config/mn10300/mn10300.c: Ditto. * config/moxie/moxie.c: Ditto. * config/msp430/msp430.c: Ditto. * config/nios2/nios2.c: Ditto. * config/nvptx/nvptx.c: Ditto. * config/pa/pa.c: Ditto. * config/pdp11/pdp11.c: Ditto. * config/rl78/rl78.c: Ditto. * config/sparc/sparc.c: Ditto. * config/spu/spu.c: Ditto. * config/stormy16/stormy16.c: Ditto. * config/tilegx/tilegx.c: Ditto. * config/tilepro/tilepro.c: Ditto. * config/v850/v850.c: Ditto. * config/vax/vax.c: Ditto. * config/visium/visium.c: Ditto. * config/xtensa/xtensa.c: Ditto. From-SVN: r240130
2016-09-14re PR sanitizer/68260 (false positive with tsan)Jakub Jelinek4-2/+106
PR sanitizer/68260 * tsan.c: Include target.h. (enum tsan_atomic_action): Add bool_clear and bool_test_and_set. (BOOL_CLEAR, BOOL_TEST_AND_SET): Define. (tsan_atomic_table): Add BUILT_IN_ATOMIC_CLEAR and BUILT_IN_ATOMIC_TEST_AND_SET entries. (instrument_builtin_call): Handle bool_clear and bool_test_and_set. * c-c++-common/tsan/pr68260.c: New test. From-SVN: r240129
2016-09-14Add braces to a condition in predict.c (PR middle-end/77574)Bernd Edlinger2-1/+7
Martin Liska <mliska@suse.cz> PR middle-end/77574 * predict.c (force_edge_cold): Add braces to a condition. Co-Authored-By: Martin Liska <mliska@suse.cz> From-SVN: r240128
2016-09-14Daily bump.GCC Administrator1-1/+1
From-SVN: r240127
2016-09-13re PR rtl-optimization/77289 (ICE in extract_constrain_insn, at recog.c:2212 ↵Bernd Edlinger2-26/+25
on powerpc64) 2016-09-13 Bernd Edlinger <bernd.edlinger@hotmail.de> PR rtl-optimization/77289 * lra-constraints.c (get_final_hard_regno): Removed. (get_hard_regno): Add new parameter final_p. (get_reg_class): Directly call lra_get_elimination_hard_regno. (operands_match_p): Adjust call to get_hard_regno. (uses_hard_regs_p): Likewise. (process_alt_operands): Likewise. From-SVN: r240124
2016-09-13re PR target/70713 (msp430 interrupt attribute prevents overriding weak symbols)Joe Seymour6-0/+35
2016-09-13 Joe Seymour <joe.s@somniumtech.com> gcc/ PR target/70713 * config/msp430/msp430.c (msp430_start_function): Emit an error if a function is both weak and specifies an interrupt number. gcc/testsuite/ PR target/70713 * gcc.target/msp430/function-attributes-1.c: New test. * gcc.target/msp430/function-attributes-2.c: New test. * gcc.target/msp430/function-attributes-3.c: New test. From-SVN: r240123
2016-09-13Implement P0040R3, Extending memory management tools.Ville Voutilainen3-0/+243
* include/bits/stl_uninitialized.h (utility): New include in C++17 mode. (uninitialized_default_construct): New. (uninitialized_default_construct_n): Likewise. (uninitialized_value_construct): Likewise. (uninitialized_value_construct_n): Likewise. (uninitialized_move): Likewise. (uninitialized_move_n): Likewise. (destroy_at, destroy, destroy_n): Likewise. * testsuite/20_util/specialized_algorithms/memory_management_tools/1.cc: New. From-SVN: r240122
2016-09-13Implement P0028R4, C++17 using attribute namespaces without repetitionJakub Jelinek5-7/+113
Implement P0028R4, C++17 using attribute namespaces without repetition * parser.c (cp_parser_std_attribute): Add ATTR_NS argument. Diagnose non-NULL ATTR_NS with scoped attribute token. Handle non-NULL ATTR_NS with non-scoped attribute tokens. Allow named ops in identifier after ::. (cp_parser_std_attribute_list): Add ATTR_NS argument, pass it down to cp_parser_std_attribute calls. (cp_parser_std_attribute_spec): Parse optional C++17 attribute-using-prefix, adjust grammar in function comment. * g++.dg/cpp0x/gen-attrs-61.C: New test. * g++.dg/cpp1z/gen-attrs1.C: New test. From-SVN: r240121
2016-09-13re PR tree-optimization/77454 (IMM ERROR w/ -O2 and above)Jakub Jelinek4-4/+45
PR tree-optimization/77454 * tree-ssa-dom.c (optimize_stmt): Set modified flag on stmt after changing GIMPLE_COND. Move update_stmt_if_modified call after this. Formatting fix. * gcc.dg/pr77454.c: New test. From-SVN: r240120
2016-09-13re PR c++/77553 (wrong code with post-increment operator in constexpr)Jakub Jelinek4-69/+103
PR c++/77553 * constexpr.c (cxx_fold_pointer_plus_expression): New function. (cxx_eval_binary_expression): Use it for POINTER_PLUS_EXPR. (cxx_eval_pointer_plus_expression): Remove. (cxx_eval_constant_expression) <case POINTER_PLUS_EXPR>: Don't call cxx_eval_pointer_plus_expression. * g++.dg/cpp1y/constexpr-77553.C: New test. From-SVN: r240119
2016-09-13re PR fortran/77420 (gfortran and equivalence produces internal compiler error)Steven G. Kargl4-31/+6
2016-09-13 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/77420 * module.c (load_equiv): Revert revision 240063. 2016-09-13 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/77420 * gfortran.dg/pr77420.f90: Revert revision 240063 by removing test. From-SVN: r240118
2016-09-13[PATCH 1/2][AArch64] Add missing support for poly64x1_tTamar Christina2-3/+8
Committed on behalf of: Tamar Christina <tamar.christina@arm.com> gcc/ * config/aarch64/aarch64-builtins.c (aarch64_init_simd_builtins): Fix builtin type signature printing. From-SVN: r240117
2016-09-13alpha.c (alpha_pass_by_reference): Pass un-named SFmode and SCmode arguments ↵Uros Bizjak2-9/+32
by reference. * config/alpha/alpha.c (alpha_pass_by_reference): Pass un-named SFmode and SCmode arguments by reference. From-SVN: r240116
2016-09-13fix-it hints: insert_before vs insert_afterDavid Malcolm15-53/+423
The API for adding "insert text" fix-it hints was unclear about exactly where the text should be inserted relative to the given insertion point. This patch clarifies things by renaming the pertinent methods from richloc.add_fixit_insert to richloc.add_fixit_insert_before and adding: richloc.add_fixit_insert_after The latter allows us to consolidate some failure-handling into class rich_location, rather than having to have every such diagnostic check for it. The patch also adds a description of how fix-it hints work to the comment for class rich_location within libcpp/include/line-map.h. gcc/c-family/ChangeLog: * c-common.c (warn_logical_not_parentheses): Replace rich_location::add_fixit_insert calls with add_fixit_insert_before and add_fixit_insert_after, eliminating the "next_loc" calculation. gcc/c/ChangeLog: * c-parser.c (c_parser_declaration_or_fndef): Update for renaming of add_fixit_insert to add_fixit_insert_before. gcc/cp/ChangeLog: * parser.c (cp_parser_class_specifier_1): Update for renaming of add_fixit_insert to add_fixit_insert_before. (cp_parser_class_head): Likewise. gcc/ChangeLog: * diagnostic-show-locus.c (selftest::test_one_liner_fixit_insert): Rename to... (selftest::test_one_liner_fixit_insert_before): ...this, and update for renaming of add_fixit_insert to add_fixit_insert_before. (selftest::test_one_liner_fixit_insert_after): New function. (selftest::test_one_liner_fixit_validation_adhoc_locations): Update for renaming of add_fixit_insert to add_fixit_insert_before. (selftest::test_one_liner_many_fixits): Likewise. (selftest::test_diagnostic_show_locus_one_liner): Update for renaming, call new test function. (selftest::test_diagnostic_show_locus_fixit_lines): Update for renaming of add_fixit_insert to add_fixit_insert_before. (selftest::test_fixit_consolidation): Likewise. * diagnostic.c (selftest::test_print_parseable_fixits_insert): Likewise. * edit-context.c (selftest::test_applying_fixits_insert): Rename to... (selftest::test_applying_fixits_insert_before): ...this. (selftest::test_applying_fixits_insert): Update for renaming of add_fixit_insert to add_fixit_insert_before. (selftest::test_applying_fixits_insert_after): New function. (selftest::test_applying_fixits_insert_after_at_line_end): New function. (selftest::test_applying_fixits_insert_after_failure): New function. (selftest::test_applying_fixits_multiple): Update for renaming of add_fixit_insert to add_fixit_insert_before. (selftest::change_line): Likewise. (selftest::test_applying_fixits_unreadable_file): Likewise. (selftest::test_applying_fixits_line_out_of_range): Likewise. (selftest::test_applying_fixits_column_validation): Likewise. (selftest::test_applying_fixits_column_validation): Likewise. (selftest::edit_context_c_tests): Update for renamed test function; call new test functions. gcc/testsuite/ChangeLog: * gcc.dg/plugin/diagnostic_plugin_test_show_locus.c (test_show_locus): Replace rich_location::add_fixit_insert calls with add_fixit_insert_before and add_fixit_insert_after. libcpp/ChangeLog: * include/line-map.h (class rich_location): Add description of fix-it hints to leading comment. (rich_location::add_fixit_insert): Rename both overloaded methods to.. (rich_location::add_fixit_insert_before): ...this, updating their comments. (rich_location::add_fixit_insert_after): Two new overloaded methods. (rich_location::stop_supporting_fixits): New method. * line-map.c (rich_location::add_fixit_insert): Rename both overloaded methods to.. (rich_location::add_fixit_insert_before): ...this, updating their comments. (rich_location::add_fixit_insert_after): Two new methods. (rich_location::reject_impossible_fixit): Split out failure-handling into... (rich_location::stop_supporting_fixits): New method. From-SVN: r240115
2016-09-13re PR tree-optimization/77536 (Vectorizer not maintaining relationship of ↵Pat Haugen2-2/+11
relative block frequencies in absence of real profile data) PR tree-optimization/77536 PR rtl-optimization/68212 * config/rs6000/rs6000.md (div->recip splitter): Remove optimize_insn_for_speed_p condition. From-SVN: r240113
2016-09-13Don't treat array as builtin type in set_underlying_typeJason Merrill4-1/+30
2016-09-13 Jason Merrill <jason@redhat.com> Tom de Vries <tom@codesourcery.com> PR c++/77427 * c-common.c (set_underlying_type): Don't treat array as builtin type. * g++.dg/pr77427.C: New test. Co-Authored-By: Tom de Vries <tom@codesourcery.com> From-SVN: r240112
2016-09-13Add new effective target: profile_update_atomicMartin Liska4-0/+17
* g++.dg/gcov/gcov-threads-1.C: Use profile_update_atomic effective target. * gcc.dg/tree-prof/val-profiler-threads-1.c: Likewise. * lib/target-supports.exp: Define the new target. From-SVN: r240111
2016-09-13Trying again to fix aligned-new on m68k.Jason Merrill2-7/+7
* c-common.c (check_cxx_fundamental_alignment_constraints): Don't limit types at all. From-SVN: r240110
2016-09-13c-typeck.c (build_unary_op): Rename FLAG parameter to NOCONVERT.Marek Polacek2-8/+14
* c-typeck.c (build_unary_op): Rename FLAG parameter to NOCONVERT. Use it. From-SVN: r240109
2016-09-13* optabs.c (prepare_cmp_insn): Update documentation comment.Maciej W. Rozycki2-4/+12
From-SVN: r240108
2016-09-13re PR middle-end/77475 (unnecessary or misleading context in reporting ↵Jakub Jelinek3-14/+46
command line problems) PR middle-end/77475 * opts.h (candidates_list_and_hint): Declare. * opts-common.c (candidates_list_and_hint): New function. (cmdline_handle_error): Use it. Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org> From-SVN: r240107
2016-09-13Daily bump.GCC Administrator1-1/+1
From-SVN: r240106
2016-09-13Simplify edited_file::print_diffDavid Malcolm2-65/+88
gcc/ChangeLog: * edit-context.c (edited_line::get_len): New accessor. (edited_file::print_diff): Split out hunk-printing into... (edited_file::print_diff_hunk): New method. (edited_file::print_diff_line): New method. From-SVN: r240103
2016-09-12Add tunning of ldpw for THunderX.Andrew Pinski6-1/+77
2016-09-12 Andrew Pinski <apinski@cavium.com> * config/aarch64/aarch64-tuning-flags.def (SLOW_UNALIGNED_LDPW): New tuning option. * config/aarch64/aarch64.c (thunderx_tunings): Enable AARCH64_EXTRA_TUNE_SLOW_UNALIGNED_LDPW. (aarch64_operands_ok_for_ldpstp): Return false if AARCH64_EXTRA_TUNE_SLOW_UNALIGNED_LDPW and the mode was SImode and the alignment is less than 8 byte. (aarch64_operands_adjust_ok_for_ldpstp): Likewise. 2016-09-12 Andrew Pinski <apinski@cavium.com> * gcc.target/aarch64/thunderxloadpair.c: New testcase. * gcc.target/aarch64/thunderxnoloadpair.c: New testcase. From-SVN: r240102
2016-09-12re PR target/77570 ([msp430-elf] Wrong assembly in delay_cycles_32x insn ↵Orlando Arias2-2/+7
declaration) 2016-09-12 Orlando Arias <oarias@knights.ucf.edu> PR target/77570 * config/msp430/msp430.md (delay_cycles_32x): Fix pushm/popm. From-SVN: r240101
2016-09-12Fix aligned-new tests on m68k.Jason Merrill2-6/+14
* c-common.c (check_cxx_fundamental_alignment_constraints): Fix bit/byte confusion, allow large alignment for types. From-SVN: r240100
2016-09-12scalar-by-value-4_x.c: Also test passing of variable arguments.Uros Bizjak7-11/+187
* gcc.dg/compat/scalar-by-value-4_x.c: Also test passing of variable arguments. * gcc.dg/compat/scalar-by-value-4_y.c (testva##NAME): New. * gcc.dg/compat/scalar-by-value-4_main.c: Update description comment. * gcc.dg/compat/scalar-return-4_x.c: Also test returning of variable argument. * gcc.dg/compat/scalar-return-4_y.c (testva##NAME): New. * gcc.dg/compat/scalar-return-4_main.c: Update description comment. From-SVN: r240099
2016-09-12re PR c++/77496 (ICE in instantiate_type, at cp/class.c:8270)Bernd Edlinger11-13/+101
gcc/c-family: 2016-09-12 Bernd Edlinger <bernd.edlinger@hotmail.de> PR c++/77496 * c-common.c (warn_for_omitted_condop): Also warn for boolean data. gcc/c: 2016-09-12 Bernd Edlinger <bernd.edlinger@hotmail.de> PR c++/77496 * c-parser.c (c_parser_conditional_expression): Pass the rightmost COMPOUND_EXPR to warn_for_omitted_condop. gcc/cp: 2016-09-12 Bernd Edlinger <bernd.edlinger@hotmail.de> PR c++/77496 * call.c (build_conditional_expr_1): Call warn_for_omitted_condop. * class.c (instantiate_type): Look through the SAVE_EXPR. gcc/testsuite: 2016-09-12 Bernd Edlinger <bernd.edlinger@hotmail.de> PR c++/77496 * c-c++-common/warn-ommitted-condop.c: Add more test cases. * g++.dg/ext/pr77496.C: New test. * g++.dg/warn/pr77496.C: New test. From-SVN: r240098
2016-09-12* config/abi/pre/gnu.ver: Use [jmy] for size_t.Jason Merrill2-6/+10
From-SVN: r240097
2016-09-12Fix suggestions for non-trivial Wformat type cases (PR c/72858)David Malcolm5-63/+816
gcc/c-family/ChangeLog: PR c/72858 * c-format.c (argument_parser::check_argument_type): Add params "type_start" and "conversion_char". Use the former to generate offset_to_type_start and pass it and conversion_char to check_format_types. (check_format_info_main): Capture the start of the type information as "type_start", and pass it an format_char to arg_parser.check_argument_type. (check_format_types): Provide an example in the leading comment. Add params "offset_to_type_start" and "conversion_char"; pass them to format_type_warning calls. (test_get_modifier_for_format_len): Likewise. (matching_type_p): New function. (get_format_for_type): Add param "conversion_char" and move implementation into... (get_format_for_type_1): ...new function, called twice. Use new function matching_type_p rather than checking for TYPE_CANONICAL equality. (get_corrected_substring): New function. (format_type_warning): Provide an example in the leading comment. Add params "offset_to_type_start" and "conversion_char". Replace call to get_format_for_type with call to get_corrected_substring and move rejection of hints for widths/precisions there. (assert_format_for_type_streq): Add param "conversion_char". (ASSERT_FORMAT_FOR_TYPE_STREQ): Add param CONVERSION_CHAR. (test_get_format_for_type_printf): Add conversion chars to the tests, adding coverage for various combinations of integer vs double conversions, and for preserving octal and hexadecimal conversions. (test_get_format_for_type_scanf): Add conversion chars to the tests. gcc/testsuite/ChangeLog: PR c/72858 * gcc.dg/format/diagnostic-ranges.c: Update expected suggestions to preserve conversion chars, and to preserve prefix information. * gcc.dg/format/pr72858.c: New test case. From-SVN: r240095
2016-09-12Implement P0253R1, Fixing a design mistake in the searchers interface in ↵Ville Voutilainen3-22/+40
Library Fundamentals. Implement P0253R1, Fixing a design mistake in the searchers interface in Library Fundamentals. * include/std/functional: (utility): New include in C++17 mode. (default_searcher): Use a pair as return type, adjust the definition. (boyer_moore_searcher): Likewise. (boyer_moore_horspool_searcher): Likewise. * testsuite/20_util/function_objects/searchers.cc: Adjust. From-SVN: r240094
2016-09-12Implement C++17 string searchers.Ville Voutilainen3-0/+461
* include/std/functional: (unordered_map, vector): New includes in C++17 mode. (array, bits/stl_algo.h): Likewise. (default_searcher, __boyer_moore_map_base): New. (__boyer_moore_array_base, __is_std_equal_to): Likewise. (__boyer_moore_base_t, boyer_moore_searcher): Likewise. (boyer_moore_horspool_searcher, make_default_searcher): Likewise. (make_boyer_moore_searcher): Likewise. (make_boyer_moore_horspool_searcher): Likewise. * testsuite/20_util/function_objects/searchers.cc: New. From-SVN: r240093
2016-09-12configure.ac: Check for the minimum in-tree MPFR version handled.Maciej W. Rozycki3-0/+15
* configure.ac: Check for the minimum in-tree MPFR version handled. * configure: Regenerate. From-SVN: r240092