- 14 Apr, 2016 15 commits
-
-
[gcc] 2016-04-14 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/70669 * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Add direct move handlers for KFmode. Change TFmode handlers test from FLOAT128_IEEE_P to FLOAT128_VECTOR_P. [gcc/testsuite] 2016-04-14 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/70669 * gcc.target/powerpc/pr70669.c: New test. From-SVN: r234995
Michael Meissner committed -
libgomp/ * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Don't pass parameter variables to subroutines. From-SVN: r234992
Cesar Philippidis committed -
re PR c++/70622 (auto specifier don't deduce value type and its pointer type within single declaration.) PR c++/70622 * parser.c (cp_parser_init_declarator): Add auto_result parm. (cp_parser_simple_declaration): Pass it. (strip_declarator_types): New. From-SVN: r234991
Jason Merrill committed -
PR c++/70543 * pt.c (value_dependent_expression_p) [VAR_DECL]: A type-dependent initializer also makes the variable value-dependent. From-SVN: r234990
Jason Merrill committed -
PR c++/70648 * constexpr.c (cxx_eval_store_expression): Also copy CONSTRUCTOR_NO_IMPLICIT_ZERO. From-SVN: r234989
Jason Merrill committed -
2016-04-14 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/70640 * gcc.target/powerpc/pr70640.c: Fix test so it correctly works on a power7 system that does not have an assembler that supports power8. From-SVN: r234988
Michael Meissner committed -
PR c++/70594 * ipa-utils.h (polymorphic_ctor_dtor_p): New prototype. * ipa-polymorphic-call.c (polymorphic_ctor_dtor_p): New function. (inlined_polymorphic_ctor_dtor_block_p): Use it. * tree-ssa-live.c (remove_unused_scope_block_p): When in_ctor_dtor_block, avoid discarding not just BLOCKs with BLOCK_ABSTRACT_ORIGIN being FUNCTION_DECL, but even when block_ultimate_origin is FUNCTION_DECL. (remove_unused_locals): If current_function_decl is polymorphic_ctor_dtor_p, pass initial true to remove_unused_scope_block_p' is_ctor_dtor_block. From-SVN: r234987
Jakub Jelinek committed -
PR c++/70652 - [6 Regression] r234966 causes bootstrap to fail Revert patch for c++/69517, c++/70019, and c++/70588. From-SVN: r234981
Martin Sebor committed -
PR c++/70029 * tree.c (verify_type): Disable the canonical type of main variant check. * g++.dg/torture/pr70029.C: New test. Co-Authored-By: Jan Hubicka <hubicka@ucw.cz> From-SVN: r234979
Marek Polacek committed -
From-SVN: r234977
Jason Merrill committed -
g++.dg/cpp1y/vla11.C: Avoid using attribute aligned to increase type size to prevent failures on targets with very low maximum alignment. From-SVN: r234976
Martin Sebor committed -
PR middle-end/70643 gcc/ * omp-low.c (lower_oacc_reductions): Check for TREE_CONSTANT when building a mem ref for the incoming reduction variable. libgomp/ * testsuite/libgomp.oacc-fortran/pr70643.f90: New test. From-SVN: r234973
Cesar Philippidis committed -
2016-04-14 Richard Biener <rguenther@suse.de> PR tree-optimization/70614 * tree-scalar-evolution.c (analyze_evolution_in_loop): Terminate loop if the evolution dropped to chrec_dont_know. (interpret_condition_phi): Likewise. From-SVN: r234972
Richard Biener committed -
2016-04-14 Richard Biener <rguenther@suse.de> PR tree-optimization/70623 * tree-ssa-pre.c (changed_blocks): Make global ... (compute_antic): ... local here. Move and fix worklist handling here. Do not clear EDGE_DFS_BACK or call mark_dfs_back_edges. (compute_antic_aux): Add dumping for MAX assumed succs. Remove worklist handling, dump when ANTIC_IN changed. (compute_partial_antic_aux): Remove worklist handling. (init_pre): Do not compute post dominators. Add a comment about the CFG order chosen. (fini_pre): Do not free post dominators. * gcc.dg/torture/pr70623.c: New testcase. * gcc.dg/torture/pr70623-2.c: Likewise. From-SVN: r234970
Richard Biener committed -
From-SVN: r234969
GCC Administrator committed
-
- 13 Apr, 2016 25 commits
-
-
PR c++/69517 - [5/6 regression] SEGV on a VLA with excess initializer elements PR c++/70019 - VLA size overflow not detected PR c++/70588 - SIGBUS on a VLA larger than SIZE_MAX / 2 gcc/testsuite/ChangeLog: 2016-04-13 Martin Sebor <msebor@redhat.com> PR c++/69517 PR c++/70019 PR c++/70588 * c-c++-common/ubsan/vla-1.c (main): Catch exceptions. * g++.dg/cpp1y/vla11.C: New test. * g++.dg/cpp1y/vla12.C: New test. * g++.dg/cpp1y/vla13.C: New test. * g++.dg/cpp1y/vla14.C: New test. * g++.dg/cpp1y/vla3.C: Restore deleted test. * gcc/testsuite/g++.dg/init/array24.C: Fully brace VLA initializer. * g++.dg/ubsan/vla-1.C: Disable exceptions. gcc/cp/ChangeLog: 2016-04-13 Martin Sebor <msebor@redhat.com> PR c++/69517 PR c++/70019 PR c++/70588 * cp-tree.h (throw_bad_array_length, build_vla_check): Declare new functions. * decl.c (check_initializer, cp_finish_decl): Call them. (reshape_init_r): Reject incompletely braced intializer-lists for VLAs. * init.c (throw_bad_array_length, build_vla_check) (build_vla_size_check, build_vla_init_check): Define new functions. * typeck2.c (split_nonconstant_init_1): Use variably_modified_type_p() to detect a VLA. (store_init_value): Same. gcc/doc/ChangeLog: 2016-04-13 Martin Sebor <msebor@redhat.com> PR c++/69517 PR c++/70019 PR c++/70588 * extend.texi (Variable Length): Document C++ specifics. libstdc++-v3/ChangeLog: 2016-04-13 Martin Sebor <msebor@redhat.com> PR c++/69517 * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA upper bound is positive. From-SVN: r234966
Martin Sebor committed -
From-SVN: r234965
Martin Sebor committed -
* include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES, _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define. * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures of functions taking empty structs by value. Add a template parameter to overloads without hints. Rename overloads with hints to _M_emplace_hint. (_Hashtable::_M_erase(true_type, const_iterator), _Hashtable::_M_erase(false_type, const_iterator)): Change signatures by reordering parameters. * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call _M_emplace_hint instead of _M_emplace. * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc), shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY. * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count, __shared_ptr): Likewise. * include/bits/stl_algo.h (replace_if): Likewise. * include/bits/stl_pair.h (piecewise_construct_t, piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES. * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg, __uses_alloc0): Likewise. * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise. * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise. * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise. * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise. * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise. * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise. From-SVN: r234964
Jonathan Wakely committed -
PR c++/70641 * ipa-pure-const.c (pass_nothrow::execute): Call maybe_clean_eh_stmt on all recursive call stmts. Return TODO_cleanup_cfg if any dead eh edges have been purged. * g++.dg/opt/pr70641.C: New test. From-SVN: r234962
Jakub Jelinek committed -
PR c++/70594 * tree-sra.c (create_access_replacement, get_replaced_param_substitute): Set DECL_NAMELESS on repl if it gets fancy name. * tree-pretty-print.c (dump_fancy_name): New function. (dump_decl_name, dump_generic_node): Use it. From-SVN: r234961
Jakub Jelinek committed -
* call.c (empty_class_msg, mark_for_abi_warning) (warn_empty_class_abi): New. (build_call_a): Use them. * decl.c (store_parm_decls): Use mark_for_abi_warning. * error.c (pp_format_to_string): New. From-SVN: r234960
Jason Merrill committed -
* call.c (pass_as_empty_struct, empty_class_arg): New. (type_passed_as, build_x_va_arg): Use pass_as_empty_struct. (build_call_a): Use empty_class_arg. * cp-tree.h (CPTI_EMPTY_STRUCT, empty_struct_type): New. * decl.c (cxx_init_decl_processing): Create empty_struct_type. From-SVN: r234959
Jason Merrill committed -
Reviewed-on: https://go-review.googlesource.com/22007 From-SVN: r234958
Ian Lance Taylor committed -
re PR testsuite/68242 (FAIL: libgomp.oacc-c-c++-common/reduction-2.c, and other OpenACC reduction test case "oddities") libgomp/ PR testsuite/68242 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Adjust test. * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise. From-SVN: r234957
Cesar Philippidis committed -
PR c++/70627 * decl.c (start_enum): Don't change an existing ENUM_UNDERLYING_TYPE. From-SVN: r234956
Jason Merrill committed -
PR rtl-optimization/68749 * gcc.dg/ifcvt-4.c: Use "word_mode" rather than "int" to limit the effects of argument promotions. Remove default args to dg-skip-if. From-SVN: r234955
Rainer Orth committed -
Currently, distclean does not remove the libcc1, gnattools, and gotools directories, and not the stage_final file either. Fix that. PR bootstrap/70173 * Makefile.tpl (local-distclean): Delete the libcc1, gnattools, and gotools directories. Delete the stage_final file. * Makefile.in: Regenerate. From-SVN: r234954
Segher Boessenkool committed -
re PR c++/70635 (ICE on (and rejects) valid code on x86_64-linux-gnu: Segmentation fault (program cc1plus)) /cp 2016-04-13 Paolo Carlini <paolo.carlini@oracle.com> PR c++/70635 * pt.c (resolve_typename_type): Fix typos in infinite recursion avoidance mechanism. /testsuite 2016-04-13 Paolo Carlini <paolo.carlini@oracle.com> PR c++/70635 * g++.dg/parse/pr70635.C: New. From-SVN: r234953
Paolo Carlini committed -
re PR c++/70639 (internal compiler error: in guard_tinfo_to_string, at c-family/c-indentation.c:560) PR c++/70639 * c-indentation.c (should_warn_for_misleading_indentation): Bail out for switch statements, too. * c-c++-common/Wmisleading-indentation-4.c: New test. From-SVN: r234952
Marek Polacek committed -
PR c/70436 * c-parser.c (c_parser_statement_after_labels): Add IF_P argument and adjust callers. (c_parser_statement): Likewise. (c_parser_c99_block_statement): Likewise. (c_parser_while_statement): Likewise. (c_parser_for_statement): Likewise. (c_parser_if_body): Don't set IF_P here. (c_parser_if_statement): Add IF_P argument. Set IF_P here. Warn about dangling else here. * c-tree.h (c_finish_if_stmt): Adjust declaration. * c-typeck.c (c_finish_if_stmt): Remove NESTED_IF parameter. Don't warn about dangling else here. * testsuite/gcc.dg/Wparentheses-12.c: New test. * testsuite/gcc.dg/Wparentheses-13.c: New test. From-SVN: r234949
Marek Polacek committed -
2016-04-13 Dominique d'Humieres <dominiq@lps.ens.fr> PR fortran/67039 * intrinsic.texi: Correct the documentation of pseudorandom number intrinsics. From-SVN: r234946
Dominique d'Humieres committed -
PR c++/70634 * pt.c (instantiation_dependent_uneval_expression_p): Split out from instantiation_dependent_expression_p. (value_dependent_expression_p): Use it for unevaluated operands. (instantiation_dependent_r): Don't check value-dependence. (instantiation_dependent_expression_p): Check value-dependence of the expression as a whole. * cp-tree.h: Declare instantiation_dependent_uneval_expression_p. * semantics.c (finish_decltype_type): Use it. From-SVN: r234945
Jason Merrill committed -
* constexpr.c (potential_nondependent_constant_expression): New. (potential_nondependent_static_init_expression): New. (maybe_constant_value_1, fold_non_dependent_expr) (maybe_constant_init): Use them. * pt.c (instantiate_non_dependent_expr_sfinae) (instantiate_non_dependent_or_null, convert_nontype_argument): Use them. * cp-tree.h: Declare them. From-SVN: r234944
Jason Merrill committed -
PR c++/70594 * decl.c (pop_labels_1): Removed. (note_label, sort_labels): New functions. (pop_labels): During named_labels traversal, just push the slot pointers into a vector, then qsort it by DECL_UID and only then call pop_label and chain it into BLOCK_VARS. From-SVN: r234942
Jakub Jelinek committed -
re PR c++/70615 (ICE on valid code at -O1 and above on x86_64-linux-gnu in add_expr, at tree.c:7870) PR c++/70615 * cp-gimplify.c (cp_genericize_r): Expand PTRMEM_CST here. (cp_gimplify_expr): Not here. From-SVN: r234940
Jason Merrill committed -
gcc/ * config/i386/i386.md (kunpckhi): Swap operands. (kunpcksi): Likewise. (kunpckdi): Likewise. * config/i386/sse.md (vec_pack_trunc_qi): Likewise. (vec_pack_trunc_<mode>): Likewise. gcc/testsuite/ * gcc.target/i386/avx512bw-kunpckdq-2.c: New test. * gcc.target/i386/avx512bw-kunpckwd-2.c: New test. * gcc.target/i386/avx512f-kunpckbw-2.c: New test. From-SVN: r234938
Ilya Enkovich committed -
PR debug/70628 * explow.c (convert_memory_address_addr_space_1): Formatting fix. From-SVN: r234937
Jakub Jelinek committed -
2016-04-13 Dominique d'Humieres <dominiq@lps.ens.fr> PR fortran/58000 * gfortran.texi: Document OPEN( ... NAME=) as not implemented in GNU Fortran From-SVN: r234936
Dominique d'Humieres committed -
re PR target/70633 (ICE on valid code at -Os (in 32-bit mode) on x86_64-linux-gnu: output_operand: invalid expression as operand) PR middle-end/70633 * gimplify.c (gimplify_init_constructor): Clear TREE_STATIC if gimplification turns some element into non-constant. * gcc.c-torture/compile/pr70633.c: New test. From-SVN: r234934
Jakub Jelinek committed -
PR debug/70628 * rtl.h (convert_memory_address_addr_space_1): New prototype. * explow.c (convert_memory_address_addr_space_1): No longer static, add NO_EMIT argument and don't call convert_modes if true, pass it down recursively, remove break after return. (convert_memory_address_addr_space): Adjust caller. * simplify-rtx.c (simplify_unary_operation_1): Call convert_memory_address_addr_space_1 instead of convert_memory_address, if it returns NULL, don't simplify. * gcc.dg/torture/pr70628.c: New test. From-SVN: r234933
Jakub Jelinek committed
-