- 07 Dec, 2016 10 commits
-
-
* cp-tree.h (enum cp_tree_index): Add CPTI_AUTO_IDENTIFIER & CPTI_DECLTYPE_AUTO_IDENTIFIER. (auto_identifier, decltype_auto_identifier): New. *decl.c (initialize_predefined_identifiers): Add 'auto' and 'decltype(auto)'. (grokdeclarator): Use cached identifier. * pt.c (make_decltype_auto, make_auto, make_constrained_auto, is_auto): Likewise. From-SVN: r243342
Nathan Sidwell committed -
* gcc-interface/decl.c (gnat_to_gnu_entity): When they are global, consider ___XR GNAT encodings variables for renamings as static so they have a location in the debug info. From-SVN: r243341
Pierre-Marie de Rodat committed -
decl.c (gnat_to_gnu_entity): Translate System.Address into ptr_type_node for every foreign convention. * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Translate System.Address into ptr_type_node for every foreign convention. (gnat_to_gnu_subprog_type): Likewise for result and parameter types. (gnat_to_gnu_param): Do not do it here for GCC builtins. (intrin_return_compatible_p): Likewise. From-SVN: r243340
Eric Botcazou committed -
From-SVN: r243338
Eric Botcazou committed -
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Enumeration_Subtype>: Also call finish_character_type on Character subtypes. * gcc-interface/utils.c (finish_character_type): Deal with subtypes. From-SVN: r243336
Eric Botcazou committed -
PR tree-optimization/78691 * match.pd ((convert1 (minmax ((convert2 (x) c)))) -> minmax (x c)): Require integral type for the outer expression. gcc/testsuite PR tree-optimization/78691 * gcc.target/i386/pr78691-i386.c: New test. * gcc.target/powerpc/pr78691-ppc.c: New test. From-SVN: r243335
Bin Cheng committed -
* gcc.target/i386/pr70322-1.c: Add -mno-stackrealign to dg-options. * gcc.target/i386/pr70322-2.c: Likewise. * gcc.target/i386/pr70322-3.c: Likewise. * gcc.target/i386/pr70322-4.c: Likewise. From-SVN: r243334
Rainer Orth committed -
gcc * config/aarch64/aarch64.c (aarch64_builtin_support_vector_misalignment): New. (TARGET_VECTORIZE_SUPPORT_VECTOR_MISALIGNMENT): Define. gcc/testsuite * gcc.target/aarch64/pr71727.c : New Testcase. From-SVN: r243333
Naveen H.S committed -
In r243317 I accidentally introduced an assumption in a selftest in i386.c that Pmode == DImode. This patch conditionalizes the overzealous string comparison to avoid breaking the build on 32-bit i386.c targets. gcc/ChangeLog: PR bootstrap/78705 * config/i386/i386.c (selftest::ix86_test_dumping_memory_blockage): Conditionalize the string comparison on Pmode == DImode. From-SVN: r243332
David Malcolm committed -
From-SVN: r243328
GCC Administrator committed
-
- 06 Dec, 2016 30 commits
-
-
PR tree-optimization/67955 * tree-ssa-alias.c (same_addr_size_stores_p): New function. (stmt_kills_ref_p): Use it. PR tree-optimization/67955 * gcc.dg/tree-ssa/dse-points-to.c: New test. From-SVN: r243325
Tom de Vries committed -
From-SVN: r243324
Eric Botcazou committed -
PR middle-end/78700 * calls.c (expand_call): Move back call to prepare_call_address. From-SVN: r243322
Eric Botcazou committed -
Add a new flag on the Var_expression class that indicates whether the var reference appears in an "lvalue" context (for example, on the LHS of an assignment stmt) or an "rvalue" context (for example, as an argument of a call). Add a traversal pass that visits assignment stmt LHS subtrees so as to mark things prior to backend gen. Select the right context value in other places where Backend::var_expression is called. Reviewed-on: https://go-review.googlesource.com/33990 * go-gcc.cc (Gcc_backend::var_expression): Add Varexpr_context parameter. From-SVN: r243321
Than McIntosh committed -
[gcc] 2016-12-06 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/78658 * config/rs6000/rs6000.md (zero_extendqi<mode>2): Use ^ instead of ?* constraints for the ISA 3.0 patterns, so the register allocator is more likely to allocate QImode/HImode to vector registers for conversion to floating point unless a reload is needed. (zero_extendhi<mode>2): Likewise. (float<QHI:mode><FP_ISA3:mode>2_internal): Properly deal with the first alternative which is converting QImode/HImode to floating point and the QImode/HImode value is in a vector register, and does not allocate the second pseudo register. Remove zero extending into traditional floating point registers, since the instruction used only works on traditional altivec registers. (floatuns<QHI:mode><FP_ISA3:mode>2_internal): Likewise. [gcc/testsuite] 2016-12-06 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/78658 * gcc.target/powerpc/pr78658.c: New test. From-SVN: r243320
Michael Meissner committed -
gcc/ChangeLog: * config/i386/i386.c: Include print-rtl.h. (selftest::ix86_test_dumping_memory_blockage): New function. (selftest::ix86_run_selftests): Call it. * print-rtl-function.c (print_rtx_function): Create an rtx_reuse_manager and use it. * print-rtl.c: Include "rtl-iter.h". (rtx_writer::rtx_writer): Add reuse_manager param. (rtx_reuse_manager::rtx_reuse_manager): New ctor. (uses_rtx_reuse_p): New function. (rtx_reuse_manager::preprocess): New function. (rtx_reuse_manager::has_reuse_id): New function. (rtx_reuse_manager::seen_def_p): New function. (rtx_reuse_manager::set_seen_def): New function. (rtx_writer::print_rtx): If "in_rtx" has a reuse ID, print it as a prefix the first time in_rtx is seen, and print reuse_rtx subsequently. (print_inline_rtx): Supply NULL for new reuse_manager param. (debug_rtx): Likewise. (print_rtl): Likewise. (print_rtl_single): Likewise. (rtx_writer::print_rtl_single_with_indent): Likewise. * print-rtl.h: Include bitmap.h when building for host. (rtx_writer::rtx_writer): Add reuse_manager param. (rtx_writer::m_rtx_reuse_manager): New field. (class rtx_reuse_manager): New class. * rtl-tests.c (selftest::assert_rtl_dump_eq): Add reuse_manager param and use it when constructing rtx_writer. (selftest::test_dumping_rtx_reuse): New function. (selftest::rtl_tests_c_tests): Call it. * selftest-rtl.h (class rtx_reuse_manager): New forward decl. (selftest::assert_rtl_dump_eq): Add reuse_manager param. (ASSERT_RTL_DUMP_EQ): Supply NULL for reuse_manager param. (ASSERT_RTL_DUMP_EQ_WITH_REUSE): New macro. From-SVN: r243317
David Malcolm committed -
2016-12-06 Vladimir Makarov <vmakarov@redhat.com> target/77761 * lra-lives.c (process_bb_lives): Update biggest mode for implicitly used hard reg. 2016-12-06 Vladimir Makarov <vmakarov@redhat.com> target/77761 * testsuite/gcc.target/i386/pr77761.c: New. From-SVN: r243316
Vladimir Makarov committed -
* config/i386/predicates.md (general_gr_operand): New predicate. * config/i386/i386.md (TImode and DImode push_operand splitter): Use general_gr_operand. Macroize using DWI mode macro. (TImode and DImode nonimmediate_operand splitter): Use nonimmediate_gr_operand and general_gr_operand. Macroize using DWI mode macro. (TF/XF/DFmode push_operand splitter): Use general_gr_operand. (TFmode nonimmediate_operand splitter): Use nonimmediate_gr_operand and general_gr_operand. (XFmode nonimmediate_operand splitter): Ditto. (DFmode nonimmediate_operand splitter): Ditto. * config/i386/mmx.md (MMXMODE nonimmediate_operand splitter): Ditto. From-SVN: r243315
Uros Bizjak committed -
Added #ifdef case for when void* is 16 bits so it compiles in AVR target. 2016-12-06 Felipe Magno de Almeida <felipe@expertisesolutions.com.br> * src/c++11/cow-stdexcept.cc: Add special case for 16 bit pointers. From-SVN: r243310
Felipe Magno de Almeida committed -
Enable libstdc++ compilation in AVR targets with AVR-Libc. Most floating point math functions are already defined in AVR-Libc, so defines are in place to avoid multiple definition of these functions. 2016-12-06 Felipe Magno de Almeida <felipe@expertisesolutions.com.br> * crossconfig.m4: Add avr target for cross-compilation. * configure: Regenerate. From-SVN: r243309
Felipe Magno de Almeida committed -
2016-12-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/78659 * resolve.c (resolve_fl_namelist): Remove unneeded error. PR fortran/78659 * gfortran.dg/alloc_comp_constraint_1.f90: Update test. * gfortran.dg/alloc_comp_constraint_7.f90: New test. * gfortran.dg/namelist_34.f90: Update test. * gfortran.dg/namelist_63.f90: Update test. From-SVN: r243308
Jerry DeLisle committed -
* config/arm/arm-cores.def (cortex-m23, cortex-m33): Move into alphabetical order with respect to other ARMv8 processors. * config/arm/arm-tables.opt: Regenerate. * config/arm/arm-tune.md: Likewise. From-SVN: r243306
Kyrylo Tkachov committed -
* python/libstdcxx/v6/printers.py (StdVariantPrinter): Update for new data member name. * testsuite/libstdc++-prettyprinters/cxx17.cc: Remove redundant test. From-SVN: r243304
Jonathan Wakely committed -
* include/bits/shared_ptr_base.h (__shared_ptr_access<T, L, false, true>::operator->()): Fix assertion. From-SVN: r243303
Jonathan Wakely committed -
gcc/ * config/mips/mips.c (mips_expand_builtin_insn): Check input ranges of literal integer arguments. gcc/testsuite/ * gcc.target/mips/msa-builtins-err.c: New test. From-SVN: r243301
Robert Suchanek committed -
gcc/fortran/ChangeLog: 2016-12-06 Andre Vehreschild <vehre@gcc.gnu.org> PR fortran/78226 * class.c (finalize_component): Add missing locus information. (finalization_scalarizer): Likewise. (finalization_get_offset): Likewise. (finalizer_insert_packed_call): Likewise. (generate_finalization_wrapper): Likewise. From-SVN: r243300
Andre Vehreschild committed -
From-SVN: r243299
Jonathan Wakely committed -
Constrain optional's __constexpr_addressof in its return type and use a constexpr addressof for optional, if available. Constrain optional's __constexpr_addressof in its return type and use a constexpr addressof for optional, if available. * include/experimental/optional (__constexpr_addressof): Constrain in the return type instead of in a template parameter. (_Has_addressof_mem) (_Has_addressof_free, _Has_addressof, __constexpr_addressof): Guard with #ifndef __cpp_lib_addressof_constexpr. (operator->()): Use std::__addressof if it's constexpr. From-SVN: r243298
Ville Voutilainen committed -
* include/std/variant (visit): Make visit constexpr. Also cleanup __get_alternative and __storage, since we don't support reference/void alternatives any more. * testsuite/20_util/variant/compile.cc: Add tests. From-SVN: r243295
Tim Shen committed -
* include/bits/enable_special_members.h: Make _Enable_default_constructor constexpr. * include/std/variant (variant::emplace, variant::swap, std::swap, std::hash): Sfinae on emplace and std::swap; handle __poison_hash bases of duplicated types. * testsuite/20_util/variant/compile.cc: Add tests. * testsuite/20_util/variant/hash.cc: Add tests. From-SVN: r243294
Tim Shen committed -
* include/std/variant (std::get, operator==): Implement constexpr comparison and get<>. * testsuite/20_util/variant/compile.cc: Tests. From-SVN: r243293
Tim Shen committed -
* include/std/variant (__erased_use_alloc_ctor, _Variant_base::_Variant_base, variant::variant): Remove uses-allocator related functions. * testsuite/20_util/variant/compile.cc: Remove related tests. * testsuite/20_util/variant/run.cc: Remove related tests. From-SVN: r243292
Tim Shen committed -
2016-12-06 Aditya Kumar <hiraditya@msn.com> * src/c++11/shared_ptr.cc (_Sp_locker::_Sp_locker(const void* p)): Add noexcept on constructor. (_Sp_locker::_Sp_locker(const void* p1, const void* p2)): Same. From-SVN: r243291
Aditya Kumar committed -
* include/bits/basic_string.h (basic_string::find, basic_string::rfind) (basic_string::find_first_of, basic_string::find_last_of) (basic_string::find_first_not_of, basic_string::find_last_not_of): Make all overloads noexcept. (basic_string::compare(const _CharT*)): Make noexcept. From-SVN: r243290
Jonathan Wakely committed -
re PR middle-end/78548 (ICE on valid C code on x86_64-linux-gnu at -O2 and -O3 in 64-bit mode with -Wall (*** Error in `/usr/local/gcc-trunk/libexec/gcc/x86_64-pc-linux-gnu/7.0.0/cc1': double free or corruption (fasttop): 0x0000000003c15810 ***)) PR middle-end/78548 * tree-ssa-uninit.c (simplify_preds_4): Call release() instead of destroy_predicate_vecs. (uninit_uses_cannot_happen): Make uninit_preds a scalar. From-SVN: r243289
Aldy Hernandez committed -
PR middle-end/78566 * tree-ssa-uninit.c (can_one_predicate_be_invalidated_p): Change argument type to a pred_chain. (can_chain_union_be_invalidated_p): Use pred_chain instead of a worklist. (flatten_out_predicate_chains): Remove. (uninit_uses_cannot_happen): Rename from uninit_ops_invalidate_phi_use. Change logic so that we are checking that the PHI use will invalidate _ALL_ possibly uninitialized operands. (is_use_properly_guarded): Rename call to uninit_ops_invalidate_phi_use into uninit_uses_cannot_happen. From-SVN: r243288
Aldy Hernandez committed -
* gcc/config/aarch64/arm_neon.h (vreinterpretq_p8_p128, vreinterpretq_p16_p128): Added. (vreinterpret_p64_p16, vreinterpretq_p64_p128): Likewise. (vreinterpretq_p64_p16, vreinterpretq_p128_p8): Likewise. (vreinterpretq_p128_p16, vreinterpretq_p128_f16): Likewise. (vreinterpretq_p128_f32, vreinterpretq_p128_p64): Likewise. (vreinterpretq_p128_s64, vreinterpretq_p128_u64): Likewise. (vreinterpretq_p128_s8, vreinterpretq_p128_s16): Likewise. (vreinterpretq_p128_s32, vreinterpretq_p128_u8): Likewise. (vreinterpretq_p128_u16, vreinterpretq_p128_u32): Likewise. (vreinterpretq_f16_p128, vreinterpretq_f32_p128): Likewise. (vreinterpretq_s64_p128, vreinterpretq_u64_p128): Likewise. (vreinterpretq_s8_p128, vreinterpretq_s16_p128): Likewise. (vreinterpretq_s32_p128, vreinterpretq_u8_p128): Likewise. (vreinterpretq_u16_p128, vreinterpretq_u32_p128): Likewise. From-SVN: r243287
Tamar Christina committed -
re PR c++/71537 (GCC rejects consetxpr boolean conversions and comparisons on the result of pointer arithmetic.) PR c++/71537 * fold-const.c (fold_comparison): Assume CONSTANT_CLASS_P (base0) plus offset is non-zero. For maybe_nonzero_address decl base0, require indirect_base0. * g++.dg/cpp0x/constexpr-71537.C: New test. From-SVN: r243286
Jakub Jelinek committed -
re PR c++/71537 (GCC rejects consetxpr boolean conversions and comparisons on the result of pointer arithmetic.) 2016-12-06 Jakub Jelinek <jakub@redhat.com> PR c++/71537 * fold-const-call.c (fold_const_call_1): Remove memchr handling here. (fold_const_call) <case CFN_BUILT_IN_STRNCMP, case CFN_BUILT_IN_STRNCASECMP>: Formatting improvements. (fold_const_call) <case CFN_BUILT_IN_MEMCMP>: Likewise. If s2 is 0 and arguments have no side-effects, return 0. (fold_const_call): Handle CFN_BUILT_IN_MEMCHR. * g++.dg/cpp0x/constexpr-memchr.C: New test. From-SVN: r243285
Jakub Jelinek committed -
re PR c++/71537 (GCC rejects consetxpr boolean conversions and comparisons on the result of pointer arithmetic.) PR c++/71537 * fold-const-call.c (fold_const_call): Handle CFN_BUILT_IN_{INDEX,STRCHR,RINDEX,STRRCHR}. * g++.dg/cpp0x/constexpr-strchr.C: New test. From-SVN: r243284
Jakub Jelinek committed
-