1. 05 Dec, 2016 11 commits
    • Subject: [PATCH] Revert "Do not simplify "(and (reg) (const bit)" to · a80b4f57
       if_then_else."
      
      
      	* combine.c: Revert r243162.
      
      From-SVN: r243256
      Segher Boessenkool committed
    • match.pd: Simplify X ? C : 0 where C is a power of 2 and X tests a single bit. · 519e0faa
      gcc:
      * match.pd: Simplify X ? C : 0 where C is a power of 2 and
      X tests a single bit.
      
      gcc/testsuite:
      * gcc.dg/fold-and-lshift.c, gcc.dg/fold-and-rshift-1.c,
      gcc.dg/fold-and-rshift-2.c: New testcases.
      
      From-SVN: r243255
      Paolo Bonzini committed
    • diagnostic.c (diagnostic_check_max_errors): New, broken out of ... · d0ea9f0a
      	gcc/
      	* diagnostic.c (diagnostic_check_max_errors): New, broken out of ...
      	(diagnostic_action_after_output): ... here.
      	(diagnostic_report_diagnostic): Call it for non-notes.
      	* diagnostic.h (struct diagnostic_context): Make max_errors signed
      	int.
      	(diagnostic_check_max_errors): Declare.
      
      	gcc/fortran/
      	* error.c (gfc_warning_check): Call diagnostic_check_max_errors.
      	(gfc_error_check): Likewise.
      
      	gcc/testsuite/
      	* c-c++-common/fmax_errors.c: Check notes after last error are
      	emitted.
      
      From-SVN: r243254
      Nathan Sidwell committed
    • re PR ada/48835 (porting GNAT to m68k-linux) · fb5e7dae
      	PR ada/48835
      	* gcc-interface/Makefile.in: Add support for m68k-linux.
      	* system-linux-m68k.ads: New file.
      
      From-SVN: r243247
      Mikael Pettersson committed
    • [ARC] Fix PIE. · 62440b4f
      gcc/
      2016-12-05  Cupertino Miranda  <cmiranda@synopsys.com>
      
      	* config/arc/arc.h (STARTFILE_SPEC): Use default linux specs.
      	(ENDFILE_SPEC): Likewise.
      
      libgcc/
      2016-12-05  Cupertino Miranda  <cmiranda@synopsys.com>
      
      	* config.host (arc*-*-linux-uclibc*): Use default extra
      	objects. Include linux-android header.
      	* config/arc/crti.S (_init): Declare symbol as function.
      	(_fini): Likewise.
      
      From-SVN: r243245
      Cupertino Miranda committed
    • [ARC] Remove unused patterns, refactor unspec+offset pattern gen. · 5a5c5784
      2016-12-05  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* config/arc/arc-protos.h (insn_is_tls_gd_dispatch): Remove.
      	* config/arc/arc.c (arc_unspec_offset): New function.
      	(arc_finalize_pic): Change.
      	(arc_emit_call_tls_get_addr): Likewise.
      	(arc_legitimize_tls_address): Likewise.
      	(arc_legitimize_pic_address): Likewise.
      	(insn_is_tls_gd_dispatch): Remove.
      	* config/arc/arc.h (INSN_REFERENCES_ARE_DELAYED): Change.
      	* config/arc/arc.md (ls_gd_load): Remove unused pattern.
      	(tls_gd_dispatch): Likewise.
      
      From-SVN: r243244
      Claudiu Zissulescu committed
    • system-darwin-ppc.ads (Support_Atomic_Primitives): Set to True only if the word size is 64. · aad6838e
      	* system-darwin-ppc.ads (Support_Atomic_Primitives): Set to True only
      	if the word size is 64.
      
      From-SVN: r243243
      Eric Botcazou committed
    • Fix arm-netbsdelf bootstrap. · 5ffd5f36
          2016-12-025  Andre Vieira  <andre.simoesdiasvieira@arm.com>
      
      	* config/arm/arm.c (TARGET_ASM_INIT_SECTIONS): Fix wrong undef
      	location.
      
      From-SVN: r243240
      Andre Vieira committed
    • [Patch 2/2 PR78561] Recalculate constant pool size before emitting it · 648e17d2
      gcc/testsuite/
      
      	PR rtl-optimization/78561
      	* gcc.target/aarch64/pr78561.c: Add missing testcase from r243183.
      
      From-SVN: r243239
      James Greenhalgh committed
    • sparc-protos.h (sparc_splitdi_legitimate): Rename to... · dc7342d2
      	* config/sparc/sparc-protos.h (sparc_splitdi_legitimate): Rename to...
      	(sparc_split_reg_mem_legitimate): ...this.
      	(sparc_split_reg_mem): Declare.
      	(sparc_split_mem_reg): Likewise.
      	(sparc_split_regreg_legitimate): Rename to...
      	(sparc_split_reg_reg_legitimate): ...this.
      	* config/sparc/sparc.c (sparc_splitdi_legitimate): Rename to...
      	(sparc_split_reg_mem_legitimate): ...this.
      	(sparc_split_reg_mem): New function.
      	(sparc_split_mem_reg): Likewise.
      	(sparc_split_regreg_legitimate): Rename to...
      	(sparc_split_reg_reg_legitimate): ...this.
      	(sparc_split_reg_reg): New function.
      	* config/sparc/sparc.md (lra): Remove "none" value.
      	(enabled): Adjust to above change.
      	(*movdi_insn_sp32): Remove new (r,T) alternative and reorder others.
      	(DImode splitters): Adjust to above renamings and use new functions.
      	(*movdf_insn_sp32): Remove new (r,T) alternative and reorder others.
      	(DFmode splitters): Adjust to above renamings and use new functions.
      	(*mov<VM64:mode>_insn_sp64): Replace C with Z constraint and use W
      	constraint in conjunction with e.
      	(*mov<VM64:mode>_insn_sp32): Remove new (r,T) alternative, add (o,Y)
      	alternative and reorder others.
      	(VM64:mode splitters): Adjust to above renamings and use new functions.
      
      From-SVN: r243238
      Eric Botcazou committed
    • Daily bump. · b2a8d083
      From-SVN: r243235
      GCC Administrator committed
  2. 04 Dec, 2016 4 commits
    • re PR fortran/78618 (ICE in gfc_check_rank, at fortran/check.c:3670) · aa7cfe40
      2016-12-04  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/78618
      	* intrinsic.c (gfc_convert_type_warn): Do not set the full typespec for
      	the conversion symbol, but only type and kind. Set the full typespec
      	for the expression.
      	(gfc_convert_chartype): Ditto.
      
      From-SVN: r243232
      Janus Weil committed
    • PR c/78668 - aligned_alloc, realloc, et al. missing attribute alloc_size · 5dcf4561
      gcc/ChangeLog:
      
      	PR c/78668
              * builtin-attrs.def (ATTR_ALLOC_SIZE, ATTR_RETURNS_NONNULL): New
              identifier tree nodes.
              (ATTR_ALLOCA_SIZE_1_NOTHROW_LEAF_LIST): New attribute list.
              (ATTR_MALLOC_SIZE_1_NOTHROW_LIST): Same.
              (ATTR_MALLOC_SIZE_1_NOTHROW_LEAF_LIST): Same.
              (ATTR_MALLOC_SIZE_1_2_NOTHROW_LEAF_LIST): Same.
              (ATTR_ALLOC_SIZE_2_NOTHROW_LEAF_LIST): Same.
              * builtins.def (aligned_alloc, calloc, malloc, realloc):
              Add attribute alloc_size.
              (alloca): Add attribute alloc_size and returns_nonnull.
      
      gcc/testsuite/ChangeLog:
      
      	PR c/78668
      	* gcc.dg/builtin-alloc-size.c: New test.
      
      From-SVN: r243231
      Martin Sebor committed
    • re PR target/70322 (STV doesn't optimize andn) · 6b7d8453
      	PR target/70322
      	* config/i386/i386.c (dimode_scalar_to_vector_candidate_p): Handle NEG.
      	(dimode_scalar_chain::compute_convert_gain): Ditto.
      	(dimode_scalar_chain::convert_insn): Ditto.
      
      testsuite/ChangeLog:
      
      	PR target/70322
      	* gcc.target/i386/pr70322-4.c: New test.
      
      From-SVN: r243228
      Uros Bizjak committed
    • Daily bump. · c818397a
      From-SVN: r243227
      GCC Administrator committed
  3. 03 Dec, 2016 11 commits
  4. 02 Dec, 2016 14 commits
    • simplify-rtx: Fix the last fix (PR78638) · 5bd12baf
      I managed to get the last obvious fix wrong: mode is M1, GET_MODE (op)
      is M2.
      
      
      	* simplify-rtx.c (simplify_truncation): M2 is not mode, it is
      	GET_MODE (op).  Fix this.
      
      From-SVN: r243210
      Segher Boessenkool committed
    • selftest.c: remove calls to strndup (PR bootstrap/78616) · bf7f70ff
      gcc/ChangeLog:
      	PR bootstrap/78616
      	* selftest.c (selftest::assert_strndup_eq): Rename to...
      	(selftest::assert_xstrndup_eq): ...this, and remove call to
      	strndup.
      	(selftest::test_strndup): Rename to...
      	(selftest::test_xstrndup): ...this, updating for above renaming.
      	(selftest::test_libiberty): Update for renaming.
      
      From-SVN: r243207
      David Malcolm committed
    • re PR target/78639 (Power9 bad code generation for cactusADM benchmark) · 6556f651
      2016-12-02  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/78639
      	* config/rs6000/rs6000.md (movdi_internal64): Fix typo in
      	subversion id 242679 that causes the wrong store instruction to be
      	generated if a DImode is in an Altivec register using REG+REG
      	addressing.
      
      From-SVN: r243206
      Michael Meissner committed
    • simplify.c (gfc_convert_char_constant): Free result on error. · 47109217
      2016-12-02  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	* simplify.c (gfc_convert_char_constant): Free result on error.
      
      From-SVN: r243205
      Steven G. Kargl committed
    • re PR c++/78649 (ICE on invalid C++ code on x86_64-linux-gnu (internal compiler… · a3f7c896
      re PR c++/78649 (ICE on invalid C++ code on x86_64-linux-gnu (internal compiler error: tree check: expected class ‘type’, have ‘exceptional’ (error_mark) in build_value_init_noctor, at cp/init.c:380))
      
      	PR c++/78649
      	* pt.c (tsubst_init): Don't call build_value_init if decl's type
      	is error_mark_node.
      
      	* g++.dg/cpp0x/pr78649.C: New test.
      
      From-SVN: r243204
      Jakub Jelinek committed
    • re PR target/70322 (STV doesn't optimize andn) · 81cff75f
      	PR target/70322
      	* config/i386/i386.md (*andndi3_doubleword): Add non-BMI alternative
      	and corresponding post-reload splitter.
      
      testsuite/ChangeLog:
      
      	PR target/70322
      	* gcc.target/i386/pr70322-2.c (dg-final): Remove xfail.
      
      From-SVN: r243202
      Uros Bizjak committed
    • [multiple changes] · 6ed022af
      2016-12-02  Janus Weil  <janus@gcc.gnu.org>
      	    Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/78618
      	* check.c (gfc_check_rank): Remove ATTRIBUTE_UNUSED.
      	* expr.c (gfc_check_assign): Fix error propagation.
      
      2016-12-02  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/78618
      	* gfortran.dg/char_conversion.f90: New test.
      
      From-SVN: r243201
      Janus Weil committed
    • [AArch64] Separate shrink wrapping hooks implementation · 827ab47a
      	* config/aarch64/aarch64.h (machine_function): Add
      	reg_is_wrapped_separately field.
      	* config/aarch64/aarch64.md (LAST_SAVED_REGNUM): Define new constant.
      	* config/aarch64/aarch64.c (emit_set_insn): Change return type to
      	rtx_insn *.
      	(aarch64_save_callee_saves): Don't save registers that are wrapped
      	separately.
      	(aarch64_restore_callee_saves): Don't restore registers that are
      	wrapped separately.
      	(offset_9bit_signed_unscaled_p, offset_12bit_unsigned_scaled_p,
      	aarch64_offset_7bit_signed_scaled_p): Move earlier in the file.
      	(aarch64_get_separate_components): New function.
      	(aarch64_get_next_set_bit): Likewise.
      	(aarch64_components_for_bb): Likewise.
      	(aarch64_disqualify_components): Likewise.
      	(aarch64_emit_prologue_components): Likewise.
      	(aarch64_emit_epilogue_components): Likewise.
      	(aarch64_set_handled_components): Likewise.
      	(aarch64_process_components): Likewise.
      	(TARGET_SHRINK_WRAP_GET_SEPARATE_COMPONENTS,
      	TARGET_SHRINK_WRAP_COMPONENTS_FOR_BB,
      	TARGET_SHRINK_WRAP_DISQUALIFY_COMPONENTS,
      	TARGET_SHRINK_WRAP_EMIT_PROLOGUE_COMPONENTS,
      	TARGET_SHRINK_WRAP_EMIT_EPILOGUE_COMPONENTS,
      	TARGET_SHRINK_WRAP_SET_HANDLED_COMPONENTS): Define.
      
      From-SVN: r243200
      Kyrylo Tkachov committed
    • Move rebuild_cfg to the end of build_ssa_passes · 8a87dced
      2016-12-02  Martin Jambor  <mjambor@suse.cz>
      
      	* passes.def: Move pass_rebuild_cgraph_edges to the end of
      	pass_build_ssa_passes.
      
      From-SVN: r243199
      Martin Jambor committed
    • alpha.md (exception_receiver): Copy alpha_gp_ave_rtx return value. · 2e3af7e2
      	* config/alpha/alpha.md (exception_receiver): Copy
      	alpha_gp_ave_rtx return value.
      
      From-SVN: r243197
      Uros Bizjak committed
    • Makefile.in (PREPROCESSOR_DEFINES): Add a level of indirection for several… · d2c82d98
      Makefile.in (PREPROCESSOR_DEFINES): Add a level of indirection for several include directories that may be relative...
      
      	* Makefile.in (PREPROCESSOR_DEFINES): Add a level of indirection
      	for several include directories that may be relative to sysroot.
      	* config/i386/x-mingw32 (gplus_includedir): Define.
      	(gplus_tool_includedir, gplus_backward_include_dir): Likewise.
      	(native_system_includedir): Likewise.
      	* config/i386/mingw32.h (STANDARD_STARTFILE_PREFIX_1): Do not
      	override if TARGET_SYSTEM_ROOT is defined.
      	(NATIVE_SYSTEM_HEADER_DIR): Likewise.
      
      From-SVN: r243196
      Tadek Kijkowski committed
    • re PR target/70322 (STV doesn't optimize andn) · 17c69eff
      	PR target/70322
      	* config/i386/i386.c (dimode_scalar_to_vector_candidate_p): Handle
      	NOT.
      	(dimode_scalar_chain::compute_convert_gain): Likewise.
      	(dimode_scalar_chain::convert_insn): Likewise.
      	* config/i386/i386.md (*one_cmpldi2_doubleword): New
      	define_insn_and_split.
      	(one_cmpl<mode>2): Use SWIM1248x iterator instead of SWIM.
      
      	* gcc.target/i386/pr70322-1.c: New test.
      	* gcc.target/i386/pr70322-2.c: New test.
      	* gcc.target/i386/pr70322-3.c: New test.
      
      From-SVN: r243195
      Jakub Jelinek committed
    • re PR target/78614 (ICE error: invalid rtl sharing found in the insn… · eb61d07e
      re PR target/78614 (ICE error: invalid rtl sharing found in the insn (verify_rtx_sharing) gcc/emit-rtl.c:2743)
      
      	PR target/78614
      	* rtl.c (copy_rtx): Don't clear used flag here.
      	(shallow_copy_rtx_stat): Clear used flag here unless code the rtx
      	is shareable.
      	* simplify-rtx.c (simplify_replace_fn_rtx): When copying rtx with
      	'E' in format, copy all vectors.
      	* emit-rtl.c (copy_insn_1): Don't clear used flag here.
      	* valtrack.c (cleanup_auto_inc_dec): Likewise.
      	* config/rs6000/rs6000.c (rs6000_frame_related): Likewise.
      
      From-SVN: r243194
      Jakub Jelinek committed
    • Added support for ARMV8-M Security Extension cmse_nonsecure_caller intrinsic · 8261e476
          gcc/ChangeLog:
          2016-12-02  Andre Vieira  <andre.simoesdiasvieira@arm.com>
      		Thomas Preud'homme  <thomas.preudhomme@arm.com>
      
      	* config/arm/arm-builtins.c (arm_builtins): Define
      	ARM_BUILTIN_CMSE_NONSECURE_CALLER.
      	(bdesc_2arg): Add line for cmse_nonsecure_caller.
      	(arm_init_builtins): Handle cmse_nonsecure_caller.
      	(arm_expand_builtin): Likewise.
      	* config/arm/arm_cmse.h (cmse_nonsecure_caller): New.
      
          gcc/testsuite/ChangeLog:
          2016-12-02  Andre Vieira  <andre.simoesdiasvieira@arm.com>
      		Thomas Preud'homme  <thomas.preudhomme@arm.com>
      
      	* gcc.target/arm/cmse/cmse-1.c: Add test for
      	cmse_nonsecure_caller.
      
      
      Co-Authored-By: Thomas Preud'homme <thomas.preudhomme@arm.com>
      
      From-SVN: r243193
      Andre Vieira committed