- 10 Jun, 2017 4 commits
-
-
2017-06-10 Tom de Vries <tom@codesourcery.com> * lib/target-supports.exp (check_effective_target_stack_size) (dg-effective-target-value): New proc. * lib/gcc.exp (gcc_target_compile): Remove adding of DSTACK_SIZE to additional_flags. * lib/objc.exp (objc_target_compile): Same. * lib/profopt.exp (profopt-get-options): Allow dg-additional-options. * g++.old-deja/g++.eh/badalloc1.C: Add -DSTACK_SIZE=<value> using dg-additional-options. * gcc.c-torture/compile/20080806-1.c: Same. * gcc.c-torture/compile/920723-1.c: Same. * gcc.c-torture/compile/930621-1.c: Same. * gcc.c-torture/compile/991214-2.c: Same. * gcc.c-torture/compile/bcopy.c: Same. * gcc.c-torture/compile/memtst.c: Same. * gcc.c-torture/compile/msp.c: Same. * gcc.c-torture/compile/stuct.c: Same. * gcc.c-torture/execute/20011008-3.c: Same. * gcc.c-torture/execute/20030209-1.c: Same. * gcc.c-torture/execute/20031012-1.c: Same. * gcc.c-torture/execute/20040805-1.c: Same. * gcc.c-torture/execute/920410-1.c: Same. * gcc.c-torture/execute/920501-7.c: Same. * gcc.c-torture/execute/921113-1.c: Same. * gcc.c-torture/execute/921202-1.c: Same. * gcc.c-torture/execute/921208-2.c: Same. * gcc.c-torture/execute/930106-1.c: Same. * gcc.c-torture/execute/930406-1.c: Same. * gcc.c-torture/execute/950221-1.c: Same. * gcc.c-torture/execute/960521-1.c: Same. * gcc.c-torture/execute/980605-1.c: Same. * gcc.c-torture/execute/comp-goto-1.c: Same. * gcc.c-torture/execute/comp-goto-2.c: Same. * gcc.c-torture/execute/memcpy-1.c: Same. * gcc.c-torture/execute/multi-ix.c: Same. * gcc.c-torture/execute/nestfunc-4.c: Same. * gcc.c-torture/execute/pr20621-1.c: Same. * gcc.c-torture/execute/pr23135.c: Same. * gcc.c-torture/execute/pr28982b.c: Same. * gcc.dg/loop-3.c: Same. * gcc.dg/struct-ret-3.c: Same. * gcc.dg/torture/stackalign/comp-goto-1.c: Same. * gcc.dg/torture/stackalign/non-local-goto-4.c: Same. * gcc.dg/tree-prof/comp-goto-1.c: Same. * gcc.dg/tree-prof/pr44777.c: Same. * doc/sourcebuild.texi (Effective-Target Keywords, Other attributes): Document effective target stack_size. From-SVN: r249090
Tom de Vries committed -
* call.c (build_converted_constant_expr): Rename from build_integral_nontype_arg_conv, handle all types. * pt.c (convert_nontype_argument): In C++17 call it for all types. Move NOP stripping inside pointer case, don't strip ADDR_EXPR. * cvt.c (strip_fnptr_conv): Also strip conversions to the same type. From-SVN: r249089
Jason Merrill committed -
* call.c (standard_conversion): Avoid creating ck_pmem when the class type is the same. * cvt.c (can_convert_qual): Split from perform_qualification_conversions. * constexpr.c (cxx_eval_constant_expression): Check it. * typeck.c (convert_ptrmem): Only cplus_expand_constant if adjustment is necessary. * pt.c (check_valid_ptrmem_cst_expr): Compare class types. (convert_nontype_argument): Avoid redundant error. From-SVN: r249088
Jason Merrill committed -
From-SVN: r249087
GCC Administrator committed
-
- 09 Jun, 2017 30 commits
-
-
* call.c (convert_like_real): Remove "inner" parameter. Don't replace a constant with its value. * cp-gimplify.c (cp_fully_fold): Use cp_fold_rvalue. From-SVN: r249083
Jason Merrill committed -
This patch adds a method: rich_location::fixits_cannot_be_auto_applied for ensuring that mutually-incompatible fix-its hints don't lead to insane output from -fdiagnostics-generate-patch. Fix-it hints within such rich_location instances are printed as normal by diagnostic_show_locus, but don't affect the output of -fdiagnostics-generate-patch. gcc/ChangeLog: * diagnostic.c (diagnostic_report_diagnostic): Only add fixits to the edit_context if they can be auto-applied. gcc/testsuite/ChangeLog: * gcc.dg/plugin/diagnostic-test-show-locus-bw.c (test_mutually_exclusive_suggestions): New test function. * gcc.dg/plugin/diagnostic-test-show-locus-generate-patch.c (test_mutually_exclusive_suggestions): New test function. * gcc.dg/plugin/diagnostic-test-show-locus-parseable-fixits.c (test_mutually_exclusive_suggestions): New test function. * gcc.dg/plugin/diagnostic_plugin_test_show_locus.c (test_show_locus): Add special-case for "test_mutually_exclusive_suggestions". libcpp/ChangeLog: * include/line-map.h (rich_location::fixits_cannot_be_auto_applied): New method. (rich_location::fixits_can_be_auto_applied_p): New accessor. (rich_location::m_fixits_cannot_be_auto_applied): New field. * line-map.c (rich_location::rich_location): Initialize new field. From-SVN: r249081
David Malcolm committed -
* pt.c (convert_nontype_argument): Check NULLPTR_TYPE_P rather than nullptr_node. From-SVN: r249080
Jason Merrill committed -
* parser.c (cp_parser_constant_expression): Check potential_rvalue_constant_expression after decay_conversion. * pt.c (convert_nontype_argument): Don't require linkage in C++17. From-SVN: r249079
Jason Merrill committed -
* pt.c (dependent_type_p_r) [FUNCTION_TYPE]: Check for dependent noexcept-specifier. From-SVN: r249078
Jason Merrill committed -
From-SVN: r249077
Jason Merrill committed -
gcc/: * opts.c (finish_options): If -fsplit-stack, disable implicit -forder-blocks-and-partition. * doc/invoke.texi (Optimize Options): Document that when using -fsplit-stack -forder-blocks-and-partition is not implicitly enabled. gcc/go/: * go-lang.c (go_langhook_post_options): If -fsplit-stack is turned on, disable implicit -forder-blocks-and-partition. gcc/testsuite/: * gcc.dg/tree-prof/split-1.c: New test. From-SVN: r249071
Ian Lance Taylor committed -
* builtin-attrs.def (ATTR_NORETURN_NOTHROW_LEAF_COLD_LIST, ATTR_CONST_NORETURN_NOTHROW_LEAF_COLD_LIST, ATTR_TMPURE_NORETURN_NOTHROW_LEAF_COLD_LIST): New. * builtins.def (abort, trap, unreachable): Declare cold. * calls.c (flags_from_decl_or_type): Lookup ECF_COLD. * tree-core.h (ECF_COLD): New. * tree.c (set_call_expr_flags): Handle ECF_COLD. (build_common_builtin_nodes): Mark unreachable and abort as cold. * class.c (build_vtbl_initializer): Mark dvirt_fn as cold. * decl.c (cxx_init_decl_processing, push_throw_library_fn): Likewise. (excpet.c): Mark terminate as cold. * gcc.dg/predict-14.c: Avoid cold function detection. * gcc.target/i386/umod-3.c: Likewise. From-SVN: r249070
Jan Hubicka committed -
From-SVN: r249069
Jan Hubicka committed -
From-SVN: r249068
Jan Hubicka committed -
2017-06-09 Tamar Christina <tamar.christina@arm.com> * config/aarch64/aarch64.md (lrint<GPF:mode><GPI:mode>2): New. gcc/testsuite/ 2017-06-09 Tamar Christina <tamar.christina@arm.com> * gcc.target/aarch64/lrint-matherr.h: New. * gcc.target/aarch64/inline-lrint_1.c: New. * gcc.target/aarch64/inline-lrint_2.c: New. * gcc.target/aarch64/no-inline-lrint_1.c: New. * gcc.target/aarch64/no-inline-lrint_2.c: New. From-SVN: r249064
Tamar Christina committed -
2017-06-09 Richard Biener <rguenther@suse.de> * tree-ssa-loop-im.c (execute_sm): Do not force multi-threaded model if the ref is always written to. From-SVN: r249063
Richard Biener committed -
2017-06-09 Tamar Christina <tamar.christina@arm.com> * config/arm/arm.c (arm_rtx_costs_internal): Make sdiv more expensive than udiv. gcc/testsuite/ 2017-06-09 Tamar Christina <tamar.christina@arm.com> * gcc.target/arm/sdiv_costs_1.c: New. From-SVN: r249062
Tamar Christina committed -
* doc/xml/manual/intro.xml: Document LWG 2802, 2873 and 2942 changes. * include/bits/shared_ptr.h (shared_ptr): Use rvalues for deleters (LWG 2802). * include/bits/shared_ptr_base.h (_Sp_ebo_helper, _Sp_counted_deleter (_Sp_counted_deleter::_Impl, __shared_count, __shared_ptr): Likewise. * testsuite/20_util/shared_ptr/cons/lwg2802.cc: New. From-SVN: r249061
Jonathan Wakely committed -
2017-06-09 Tom de Vries <tom@codesourcery.com> PR target/80855 * config/nvptx/nvptx.md (define_expand "mov<QHSDISDFM>"): Error out with "target cannot support label values" when encountering LABEL_REF. * gcc.target/nvptx/label-values.c: New test. From-SVN: r249060
Tom de Vries committed -
2017-06-09 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc/testsuite/ * lib/target-supports.exp (check_effective_target_arm_arch_FUNC_ok): Test for null definitions instead of them being undefined. Add entry for ARMv7VE. Reindent entry for ARMv8-M Baseline. Add comment warning about using the effective target for architecture extension. (check_effective_target_arm_arch_v7ve_ok): Remove. (add_options_for_arm_arch_v7ve): Likewise. From-SVN: r249059
Thomas Preud'homme committed -
2017-06-09 Martin Liska <mliska@suse.cz> * tree-profile.c (gimple_gen_ic_profiler): Update comment. (gimple_gen_ic_func_profiler): Emit direct comparison of __gcov_indirect_call_callee with NULL. (gimple_gen_time_profiler): Change probability from PROB_VERY_UNLIKELY to PROB_UNLIKELY. 2017-06-09 Martin Liska <mliska@suse.cz> * libgcov-profiler.c (__gcov_indirect_call_profiler_v2): Reset __gcov_indirect_call_callee to NULL. From-SVN: r249058
Martin Liska committed -
* profile.c (edge_gcov_counts): Turn to pointer. (compute_branch_probabilities, compute_branch_probabilities): Update. (branch_prob): Do not clear edge_gcov_count. * profile.h (edge_gcov_counts): Turn to pointer. (edge_gcov_count): Update. From-SVN: r249057
Jan Hubicka committed -
* profile.c (edge_gcov_counts): Turn to pointer. (compute_branch_probabilities, compute_branch_probabilities): Update. * profile.h (edge_gcov_counts): Turn to pointer. (edge_gcov_count): Update. From-SVN: r249056
Jan Hubicka committed -
From-SVN: r249055
Jan Hubicka committed -
* include/bits/forward_list.h (forward_list): Add deduction guide. * include/bits/stl_deque.h (deque): Likewise. * include/bits/stl_list.h (list): Likewise. * include/bits/stl_vector.h (vector): Likewise. * testsuite/23_containers/deque/cons/deduction.cc: New. * testsuite/23_containers/forward_list/cons/deduction.cc: New. * testsuite/23_containers/list/cons/deduction.cc: New. * testsuite/23_containers/vector/cons/deduction.cc: New. From-SVN: r249054
Jonathan Wakely committed -
2017-06-09 Richard Biener <rguenther@suse.de> PR tree-optimization/66623 * tree-vect-loop.c (vect_is_simple_reduction): Cleanup, refactor check_reduction into two parts, properly computing whether we have to check reduction validity for outer loop vectorization. * gcc.dg/vect/pr66623.c: New testcase. From-SVN: r249053
Richard Biener committed -
re PR tree-optimization/79483 ([graphite] ICE: verify_ssa failed (error: definition in block 31 does not dominate use in block 28)) 2017-06-09 Richard Biener <rguenther@suse.de> PR tree-optimization/79483 * graphite-scop-detection.c (order): New global. (get_order): Compute bb to order mapping that satisfies code generation constraints. (cmp_pbbs): New helper. (build_scops): Start domwalk at entry block, sort generated pbbs. * gcc.dg/graphite/pr79483.c: New testcase. From-SVN: r249052
Richard Biener committed -
2017-06-09 Richard Biener <rguenther@suse.de> PR middle-end/81007 * ipa-polymorphic-call.c (ipa_polymorphic_call_context::restrict_to_inner_class): Skip FIELD_DECLs with error_mark_node type. * passes.def (all_lowering_passes): Run pass_build_cgraph_edges last again. * g++.dg/pr81007.C: New testcase. From-SVN: r249051
Richard Biener committed -
From-SVN: r249050
Tamar Christina committed -
* gcc.target/i386/mpx/hard-reg-1-nov.c (mpx_test): Use "esp" instead of "rsp" for -m32. * gcc.target/i386/mpx/hard-reg-2-lbv.c: Require sse2_runtime effective target, add -msse2 to dg-options. * gcc.target/i386/mpx/hard-reg-2-nov.c: Likewise. * gcc.target/i386/mpx/hard-reg-2-ubv.c: Likewise. From-SVN: r249049
Jakub Jelinek committed -
2017-06-09 Martin Liska <mliska@suse.cz> * predict.c (struct branch_predictor): New struct. (test_prediction_value_range): New test. (predict_c_tests): New function. * selftest-run-tests.c (selftest::run_tests): Run the function. * selftest.h: Declare new tests. From-SVN: r249048
Martin Liska committed -
Fix lvalue/rvalue context mixup Set_and_use_temporary_expression's do_get_backend() method. Enhance Mark_lvalue_varexprs to handle conversions and temporary reference expressions, since occasionally the front end emits code such as "deref(conv(tempref)) = ...". Reviewed-on: https://go-review.googlesource.com/45141 From-SVN: r249047
Ian Lance Taylor committed -
If there is a large stack frame the rs6000 -fstack-limit code would calculate the new stack pointer value using two insns (an addis and an addi), with r0 as temporary. Such instructions do not exist. This patch changes add<mode>3 to expand using a different strategy in such cases; to FAIL if there is no way to do it (namely, if the source is r0 and there is no way to get a temporary reg); and it changes rs6000_emit_allocate_stack to assert gen_add3_insn did in fact emit instructions. PR target/80966 * config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Assert that gen_add3_insn did not fail. * config/rs6000/rs6000.md (add<mode>3): If asked to add a constant to r0, construct that number in a temporary reg and add that reg to r0. If asked to put the result in r0 as well, fail. gcc/testsuite/ * gcc.target/powerpc/stack-limit.c: New testcase. From-SVN: r249046
Segher Boessenkool committed -
From-SVN: r249045
GCC Administrator committed
-
- 08 Jun, 2017 6 commits
-
-
[gcc] 2017-06-08 Will Schmidt <will_schmidt@vnet.ibm.com> * config/rs6000/rs6000.c (rs6000_gimple_fold_builtin): Add handling for early expansion of vec_eqv. [gcc/testsuite] 2017-06-08 Will Schmidt <will_schmidt@vnet.ibm.com> * testsuite/gcc.target/powerpc/fold-vec-logical-eqv-char.c: New. * testsuite/gcc.target/powerpc/fold-vec-logical-eqv-float.c: New. * testsuite/gcc.target/powerpc/fold-vec-logical-eqv-floatdouble.c: New. * testsuite/gcc.target/powerpc/fold-vec-logical-eqv-int.c: New. * testsuite/gcc.target/powerpc/fold-vec-logical-eqv-longlong.c: New. * testsuite/gcc.target/powerpc/fold-vec-logical-eqv-short.c: New. From-SVN: r249040
Will Schmidt committed -
PR c/81006 * c-typeck.c (handle_omp_array_sections_1): Convert TYPE_MAX_VALUE to sizetype before size_binop. * semantics.c (handle_omp_array_sections_1): Convert TYPE_MAX_VALUE to sizetype before size_binop. * c-c++-common/gomp/pr81006.c: New test. From-SVN: r249035
Jakub Jelinek committed -
Reviewed-on: https://go-review.googlesource.com/45150 From-SVN: r249033
Ian Lance Taylor committed -
PR c++/81011 * cp-gimplify.c (cxx_omp_finish_clause): When changing clause to OMP_CLAUSE_SHARED, also clear OMP_CLAUSE_SHARED_FIRSTPRIVATE and OMP_CLAUSE_SHARED_READONLY flags. * g++.dg/gomp/pr81011.C: New test. From-SVN: r249031
Jakub Jelinek committed -
re PR middle-end/81005 (-fsanitize=null and -fsanitize=alignment doesn't check aggregate arguments of calls) PR middle-end/81005 * ubsan.c (instrument_null): Avoid pointless code temporary. (pass_ubsan::execute): Instrument aggregate arguments of calls. * c-c++-common/ubsan/align-10.c: New test. * c-c++-common/ubsan/null-13.c: New test. From-SVN: r249030
Jakub Jelinek committed -
A couple of the Backend::var_expression invocations in Unary_expression::do_get_backend were selecting "lvalue" context incorrectly (these var exprs were not in an assignment or LHS position); fix is to change back to "rvalue" context. Reviewed-on: https://go-review.googlesource.com/45136 From-SVN: r249029
Ian Lance Taylor committed
-