1. 16 Jul, 2015 7 commits
    • linux-common.h (LINK_MPX): New. · 6de59c8a
      gcc/
      
      	* config/i386/linux-common.h (LINK_MPX): New.
      	(MPX_SPEC): Use LINK_MPX instead of %(link_mpx).
      	* configure.ac: Add HAVE_LD_BNDPLT_SUPPORT macro
      	indicating '-z bndplt' support by linker.
      	* configure: Regenerate.
      	* config.in: Regenerate.
      
      libmpx/
      
      	* configure.ac: Remove link_mpx.
      	* libmpx.spec.in: Likewise.
      	* configure: Regenerate.
      
      From-SVN: r225862
      Ilya Enkovich committed
    • fold-const.c (fold_widened_comparison): Remove. · 79d4f7c6
      2015-07-16  Richard Biener  <rguenther@suse.de>
      
      	* fold-const.c (fold_widened_comparison): Remove.
      	(fold_sign_changed_comparison): Likewise.
      	(fold_comparison): Move widened and sign-changed comparison
      	simplification ...
      	* match.pd: ... to patterns here.
      	* generic-match-head.c: Include target.h.
      	* gimple-match-head.c: Likewise.
      
      	* gcc.dg/tree-ssa/pr21031.c: Adjust.
      
      From-SVN: r225861
      Richard Biener committed
    • tree-ssa-dom.c (dom_valueize): New function. · 612b9d13
      2015-07-16  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-dom.c (dom_valueize): New function.
      	(record_temporary_equivalences): Also record equivalences
      	for dominating stmts that have uses of equivalences we are
      	about to record.
      
      From-SVN: r225860
      Richard Biener committed
    • tree-ssa-loop-ivopts.c (add_candidate): Remove call to add_autoinc_candidates. · 4c3b378b
      
      	* tree-ssa-loop-ivopts.c (add_candidate): Remove call to
      	add_autoinc_candidates.
      	(add_iv_candidate_for_biv): Rename to add_iv_candidate_for_biv.
      	(add_iv_candidate_for_biv): Rename from add_iv_candidate_for_biv.
      	(add_old_ivs_candidates): Rename to add_iv_candidate_for_bivs.
      	(add_iv_candidate_for_bivs): Rename from add_old_ivs_candidates.
      	Call new function.
      	(add_iv_value_candidates): Rename to add_iv_candidate_for_use.
      	(add_iv_candidate_for_use): Rename from add_iv_value_candidates.
      	Remove parameter struct iv*.  Call add_autoinc_candidates here.
      	(add_derived_ivs_candidates): Rename to add_iv_candidate_for_uses.
      	(add_iv_candidate_for_uses): Rename from add_derived_ivs_candidates.
      	Call new function.
      	(find_iv_candidates): Call new functions.
      
      From-SVN: r225859
      Bin Cheng committed
    • nios2.c (nios2_emit_stack_limit_check): Fix uninitialized-variable warning. · a6885f12
      2015-07-16  Sandra Loosemore  <sandra@codesourcery.com>
      
      	gcc/
      	* config/nios2/nios2.c (nios2_emit_stack_limit_check): Fix
      	uninitialized-variable warning.
      
      From-SVN: r225857
      Sandra Loosemore committed
    • re PR target/65249 (unable to find a register to spill in class 'R0_REGS' when… · fdc2ce3f
      re PR target/65249 (unable to find a register to spill in class 'R0_REGS' when compiling protobuf on sh4)
      
      PR target/65249
      * config/sh/sh.md (movdi): Split simple reg move to two movsi when
        the destination is R0 so as to lower R0-register pressure.
      
      From-SVN: r225856
      Kaz Kojima committed
    • Daily bump. · 58b1eb43
      From-SVN: r225855
      GCC Administrator committed
  2. 15 Jul, 2015 33 commits
    • re PR target/66866 (incorrect load address on manual vector shuffle) · baca1278
      	PR target/66866
      	* config/i386/i386-protos.h (ix86_expand_pextr): New prototype.
      	* config/i386/i386.c (ix86_expand_pextr): New function.
      	(ix86_expand_pinsr): Handle V1TI and TI modes.  Call ix86_expand_pextr
      	for non-lowpart subregs.
      	* config/i386/i386.md (extzv<mode>): Expand with ix86_expand_pextr.
      	(insv<mode>): Use SWI248 mode iterator.
      	(insv<mode>_1): Ditto.
      
      testsuite/ChangeLog:
      
      	PR target/66866
      	* g++.dg/pr66866.C: New test.
      
      From-SVN: r225852
      Uros Bizjak committed
    • One of the code refactorings introducing phi node iterators modified the semantics of this code. · 1f8ba824
      One of the code refactorings introducing phi node iterators modified
      the semantics of this code.  Revert that change to what was before.
      
              * graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Point
              iterator to use_stmt.
      
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r225851
      Aditya Kumar committed
    • [graphite] discard scops for which entry==exit · d7f49f78
      In this patch we discard the scops where entry and exit are the same BB.
      This is an effort to remove graphite-scop-detection.c:limit_scops.
      Removing the limit_scops function introduces correctness regressions.
      We are making relevant changes in incremental steps to fix those bugs,
      and finally we intend to remove limit_scops.
      
      2015-06-29  Aditya Kumar  <aditya.k7@samsung.com>
                      Sebastian Pop <s.pop@samsung.com>
      
              * graphite-scop-detection.c (build_scops_1): Discard scops for which entry==exit
      
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r225850
      Aditya Kumar committed
    • graphite-scop-detection.c (stmt_simple_for_scop_p): Bail out in case of a return statement in scop. · 1ee9ef73
              * graphite-scop-detection.c (stmt_simple_for_scop_p): Bail out in
              case of a return statement in scop.
      
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r225849
      Aditya Kumar committed
    • graphite-sese-to-poly.c (parameter_index_in_region): Only handle INTEGER_TYPE parameters. · 4bc4dd11
              * graphite-sese-to-poly.c (parameter_index_in_region): Only handle
              INTEGER_TYPE parameters.
              (scan_tree_for_params): Handle REAL_CST, COMPLEX_CST, and
              VECTOR_CST in scan_tree_for_params.
              (add_conditions_to_domain): Only constrain on INTEGER_TYPE.
      
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r225848
      Aditya Kumar committed
    • gimple-pretty-print.h: Don't include pretty-print.h. · 48d859bb
      
      
      	* gimple-pretty-print.h: Don't include pretty-print.h.
      	* tree-streamer.h: Don't include lto-streamer.h.
      	* gimple-streamer.h: Include tree-streamer.h rather than lto-streamer.h.
      	* gimple-streamer-in.c: Remove redundant includes.
      	* gimple-streamer-out.c: Likewise.
      	* ipa-devirt.c: Likewise.
      	* ipa-icf.c: Likewise.
      	* ipa-inline-analysis.c: Likewise.
      	* ipa-polymorphic-call.c: Likewise.
      	* ipa-profile.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-pure-const.c: Likewise.
      	* lto-cgraph.c: Likewise.
      	* lto-streamer-in.c: Likewise.
      	* lto-streamer-out.c: Likewise.
      	* lto-streamer.c: Likewise.
      	* tree-streamer-in.c: Likewise.
      	* tree-streamer-out.c: Likewise.
      	* tree-streamer.c: Likewise.
      	* lto/lto.c: Remove redundant includes.
      
      From-SVN: r225847
      Andrew MacLeod committed
    • opth-gen.awk: Check for UNKNOWN_LOCATION rather than GCC_TM_H, don't include input.h. · 903f5c23
      
      2015-07-15  Andrew MacLeod  <amacleod@redhat.com>
      
      	* opth-gen.awk: Check for UNKNOWN_LOCATION rather than GCC_TM_H, don't
      	include input.h.
      	* opts.c: Remove multiline #include comment.
      
      
      2015-07-15  Andrew MacLeod  <amacleod@redhat.com>
      
      	* java/expr.c: Remove multiline #include comment.
      
      
      2015-07-15  Andrew MacLeod  <amacleod@redhat.com>
      
      	* fortran/trans-types.c: Remove multiline #include comment.
      
      
      2015-07-15  Andrew MacLeod  <amacleod@redhat.com>
      
      	* c-family/c-opts.c: Remove multiline #include comment.
      
      From-SVN: r225846
      Andrew MacLeod committed
    • mkoffload.c (process): Add C++ protection to emitted code. · 852b55f9
      	* config/nvptx/mkoffload.c (process): Add C++ protection to
      	emitted code.
      
      From-SVN: r225844
      Nathan Sidwell committed
    • re PR libgcc/66854 (libgcc2.c:1846:9: internal compiler error: Segmentation fault) · 58b62eaa
      2015-07-14  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/66854
      	* config/rs6000/rs6000.c (rs6000_pass_by_reference): Move test for
      	null before IEEE 128-bit floating point support patch.
      
      From-SVN: r225843
      Michael Meissner committed
    • simplify-rtx.c (simplify_ternary_operation): Add simplification for (!c) !=… · 34222cd6
      simplify-rtx.c (simplify_ternary_operation): Add simplification for (!c) != {0,...,0} ? a : b for vector modes.
      
      [gcc]
      
      2015-07-15  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* simplify-rtx.c (simplify_ternary_operation): Add simplification
      	for (!c) != {0,...,0} ? a : b for vector modes.
      
      [gcc/testsuite]
      
      2015-07-15  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gcc.target/powerpc/vec-cmp-sel.c: New test.
      
      From-SVN: r225840
      Bill Schmidt committed
    • Limit AA walking when inlining analysis examines parameters · ff302741
      2015-07-15  Paolo Bonzini  <bonzini@gnu.org>
      	    Martin Jambor  <mjambor@suse.cz>
      
      	* ipa-inline-analysis.c (unmodified_parm_or_parm_agg_item): Accept
      	struct func_body_info* instead of struct ipa_node_params*, expecting
      	fbi->info to be filled in.  Replace throughout.  Adjust call to
      	ipa_load_from_parm_agg.
      	(set_cond_stmt_execution_predicate): Accept struct func_body_info*
      	instead of struct ipa_node_params*.  Adjust calls to other functions
      	so that they pass either fbi or fbi->info.
      	(set_switch_stmt_execution_predicate): Likewise.
      	(will_be_nonconstant_predicate): Likewise.
      	(compute_bb_predicates): Likewise.
      	(estimate_function_body_sizes): Move asserts earlier.  Fill in
      	struct func_body_info, replace parms_info with fbi.info.  Adjust
      	calls to functions that now accept struct func_body_info.
      	* ipa-prop.c (param_aa_status, struct ipa_bb_info): Move to ipa-prop.h.
      	(struct func_body_info): Likewise.
      	(ipa_load_from_parm_agg_1): Rename to ipa_load_from_parm_agg,
      	remove static.  Adjust callers.
      	(ipa_load_from_parm_agg): Remove.
      	* ipa-prop.h (param_aa_status, ipa_bb_info): Move from ipa-prop.c.
      	(func_body_info): Likewise.
      	(ipa_load_from_parm_agg): Adjust prototype.
      
      
      Co-Authored-By: Martin Jambor <mjambor@suse.cz>
      
      From-SVN: r225838
      Paolo Bonzini committed
    • check_GNU_style.sh: Fix quoting in cat_with_prefix · 7392b090
      2015-07-15  Tom de Vries  <tom@codesourcery.com>
      
      	* check_GNU_style.sh (cat_with_prefix): Fix quoting.
      
      From-SVN: r225837
      Tom de Vries committed
    • remove some usage of expr_list from read_rtx · 6b8068d6
      gcc/ChangeLog:
      
      2015-07-12  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* gensupport.c (rtx_handle_directive): Adjust.
      	* read-rtl.c (apply_iterators): Take vector to add rtxs to
      	instead of expr list rtx.
      	(add_define_attr_for_define_subst): Likewise.
      	(add_define_subst_attr): Likewise.
      	(read_subst_mapping): Likewise.
      	(read_rtx): Likewise.
      	* rtl.h (read_rtx): Adjust.
      
      From-SVN: r225833
      Trevor Saunders committed
    • re PR c++/65091 (decltype(~arg) fails for template functions) · 0467e3eb
      	PR c++/65091
      	* parser.c (cp_parser_unqualified_id): Don't accept ~x in a
      	template if there is no type x in scope.
      
      From-SVN: r225831
      Jason Merrill committed
    • [AArch64] Use cinc mnemonic for *csinc2<mode>_insn · 49f88e43
      	* config/aarch64/aarch64.md (*csinc2<mode>_insn): Use cinc mnemonic.
      
      From-SVN: r225830
      Kyrylo Tkachov committed
    • re PR target/58066 (__tls_get_addr is called with misaligned stack on x86-64) · e6c9b417
      	PR target/58066
      	* config/i386/i386.md (*tls_global_dynamic_64_<mode>): Depend on SP_REG.
      	(*tls_local_dynamic_base_64_<mode>): Ditto.
      	(*tls_local_dynamic_base_64_largepic): Ditto.
      	(tls_global_dynamic_64_<mode>): Update expander pattern.
      	(tls_local_dynamic_base_64_<mode>): Ditto.
      
      From-SVN: r225829
      Uros Bizjak committed
    • Fix libgomp tests. · 28ef6a27
      2015-07-15  Maxim Blumenthal  <maxim.blumenthal@intel.com>
      
      libgomp/
      	* testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Change type
      	of EPS parameter from integer to real.
      	* testsuite/libgomp.fortran/examples-4/task_dep-5.f90: (check): Change
      	type of EPS parameter from integer to real.
      
      From-SVN: r225827
      Maxim Blumenthal committed
    • fold-const.c (fold_binary_loc): Move bool_var != 0 -> bool_var and bool_var == 1… · 55cf3946
      fold-const.c (fold_binary_loc): Move bool_var != 0 -> bool_var and bool_var == 1 -> bool_var simplifications ...
      
      2015-07-15  Richard Biener  <rguenther@suse.de>
      
      	* fold-const.c (fold_binary_loc): Move bool_var != 0 -> bool_var
      	and bool_var == 1 -> bool_var simplifications ...
      	* match.pd: ... to patterns here.  Factor out negate_expr_p
      	cases from the A - B -> A + (-B) patterns as negate_expr_p
      	predicate and add a -(A + B) -> (-B) - A pattern.
      
      From-SVN: r225825
      Richard Biener committed
    • objc-torture.exp (OBJC_TORTURE_OPTIONS): Remove { -O3 -fomit-frame-pointer }... · aa6cf07e
      2015-07-15  Richard Biener  <rguenther@suse.de>
      
      	* lib/objc-torture.exp (OBJC_TORTURE_OPTIONS): Remove
      	{ -O3 -fomit-frame-pointer },
      	{ -O3 -fomit-frame-pointer -funroll-loops } and
      	{ -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions }
      	in favor of
      	{ -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer
      	  -finline-functions }
      
      From-SVN: r225821
      Richard Biener committed
    • Fix restoration of hi/lo in MIPS64R2 interrupt handlers. · 8e8886f6
      gcc/
      	* config/mips/mips.c (mips_emit_save_slot_move): Fix typo.
      
      gcc/testsuite/
      	* gcc.target/mips/interrupt_handler-5.c: New test.
      
      From-SVN: r225820
      Robert Suchanek committed
    • Support new interrupt handler options. · 0256a844
      gcc/
      	* config/mips/mips.c (mips_int_mask): New enum.
      	(mips_shadow_set): Likewise.
      	(int_mask): New variable.
      	(use_shadow_register_set_p): Change type to enum mips_shadow_set.
      	(machine_function): Add int_mask and use_shadow_register_set.
      	(mips_attribute_table): Add attribute handlers for interrupt and
      	use_shadow_register_set.
      	(mips_interrupt_mask): New static function.
      	(mips_handle_interrupt_attr): Likewise.
      	(mips_handle_use_shadow_register_set_attr): Likewise.
      	(mips_use_shadow_register_set): Change return type to enum
      	mips_shadow_set.  Add argument handling for use_shadow_register_set
      	attribute.
      	(mips_interrupt_extra_called_saved_reg_p): Update the conditional to
      	compare with mips_shadow_set enum.
      	(mips_compute_frame_info): Add interrupt mask and
      	use_shadow_register_set to per-function information structure.
      	Add a stack slot for EPC unconditionally.
      	(mips_expand_prologue): Compare use_shadow_register_set value
      	with mips_shadow_set enum.  Save EPC always in K1, clobber only K1 for
      	masked interrupt register but in EIC mode use K0 and save Cause in K0.
      	EPC saved and restored unconditionally.  Use PMODE_INSN macro when
      	copying the stack pointer from the shadow register set.
      	* config/mips/mips.h (SR_IM0): New define.
      	* config/mips/mips.md (mips_rdpgpr): Rename to...
      	(mips_rdpgpr_<mode>): ...this.  Use the Pmode iterator.
      	* doc/extend.texi (Declaring Attributes of Functions): Document
      	optional arguments for interrupt and use_shadow_register_set
      	attributes.
      
      gcc/testsuite/
      	* gcc.target/mips/interrupt_handler-4.c: New test.
      
      Co-Authored-By: Robert Suchanek <robert.suchanek@imgtec.com>
      
      From-SVN: r225819
      Matthew Fortune committed
    • Support interrupt handlers with hard-float. · 6a2b848b
      gcc/
      	* config/mips/mips.c (mips_compute_frame_info): Allow -mhard-float in
      	interrupt attribute.
      	(mips_expand_prologue): Disable the floating point unit in an ISR.
      	* config/mips/mips.h (SR_COP1): New define.
      
      From-SVN: r225818
      Robert Suchanek committed
    • re PR testsuite/66734 (Many MPX tests are skipped) · 22dd66d4
      	PR testsuite/66734
      	* gcc.dg/lto/lto.exp: Initialize MPX.
      
      From-SVN: r225815
      Ilya Enkovich committed
    • [ARM][testsuite] Add -mfloat-abi=softfp to some xscale tests · d216761f
      	* gcc.target/arm/scd42-1.c: Add -mfloat-abi=softfp and appropriate
      	dg-skip-if.
      	* gcc.target/arm/scd42-3.c: Likewise.
      
      From-SVN: r225814
      Kyrylo Tkachov committed
    • MIPS: In mips.exp allow the post-arch code to be run when the pre-arch code… · 765a514d
      MIPS: In mips.exp allow the post-arch code to be run when the pre-arch code increases the isa_rev to mips32r6 or greater.
      
      testsuite/
      	* gcc.target/mips/mips.exp (mips-dg-options): Allow the post-arch
      	code to be run when the pre-arch code increases the isa_rev to
      	mips32r6 or greater.
      
      From-SVN: r225813
      Andrew Bennett committed
    • [gomp] Recycle last non-nested team if possible · 6dba0113
      libgomp/ChangeLog
      2015-07-15  Sebastian Huber  <sebastian.huber@embedded-brains.de>
      
      	* team.c (get_last_team): New.
      	(gomp_new_team): Recycle last non-nested team if possible.
      	(gomp_team_end): Move team work share list free lock destruction
      	to ...
      	(free_team): ... here.
      
      From-SVN: r225811
      Sebastian Huber committed
    • Add missing PR target/66731 to gcc/testsuite/Changelog · 290f6359
      From-SVN: r225810
      Szabolcs Nagy committed
    • genmatch.c (parser::peek, [...]): Add argument to tell how many tokens to peek ahead (default 1). · 64d3a1f0
      2015-07-15  Richard Biener  <rguenther@suse.de>
      
      	* genmatch.c (parser::peek, parser::peek_ident): Add argument
      	to tell how many tokens to peek ahead (default 1).
      	(parser::eat_token, parser::eat_ident): Return token consumed.
      	(parser::parse_result): Parse new switch statement.
      	* match.pd: Use case statements where appropriate.
      
      From-SVN: r225809
      Richard Biener committed
    • c-torture.exp (C_TORTURE_OPTIONS): Remove { -O3 -fomit-frame-pointer }... · a16bca31
      2015-07-15  Richard Biener  <rguenther@suse.de>
      
      	* lib/c-torture.exp (C_TORTURE_OPTIONS): Remove
      	{ -O3 -fomit-frame-pointer },
      	{ -O3 -fomit-frame-pointer -funroll-loops } and
      	{ -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions }
      	in favor of
      	{ -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer
      	  -finline-functions }
      	* lib/gcc-dg.exp (DG_TORTURE_OPTIONS): Likewise.
      	* gcc.c-torture/execute/builtins/builtins.exp: Add -fno-tracer
      	to additional_flags.
      
      From-SVN: r225808
      Richard Biener committed
    • re PR target/58066 (__tls_get_addr is called with misaligned stack on x86-64) · ac4ee457
      	PR rtl-optimization/58066
      	* calls.c (expand_call): Precompute register parameters before stack
      	alignment is performed.
      
      From-SVN: r225807
      Uros Bizjak committed
    • re PR rtl-optimization/66838 (Calling multiple SYSV AMD64 ABI functions from MS… · 7a708f68
      re PR rtl-optimization/66838 (Calling multiple SYSV AMD64 ABI functions from MS x64 ABI one results in clobbered parameters)
      
      	PR rtl-optimization/66838
      	* postreload.c (reload_cse_move2add): Also process
      	CALL_INSN_FUNCTION_USAGE when resetting information of
      	call-clobbered registers.
      
      testsuite/ChangeLog:
      
      	PR rtl-optimization/66838
      	* gcc.target/i386/pr66838.c: New test.
      
      From-SVN: r225806
      Uros Bizjak committed
    • Daily bump. · 73bf400d
      From-SVN: r225804
      GCC Administrator committed
    • re PR c++/66850 (Adding a forward declaration of a template containing a… · 09f725f4
      re PR c++/66850 (Adding a forward declaration of a template containing a template template parm causes ICE on valid code)
      
      Fix PR c++/66850
      
      gcc/cp/ChangeLog:
      
      	PR c++/66850
      	* pt.c (redeclare_class_template): Set the DECL_CONTEXTs of each
      	template template parm in the redeclaration.
      	(lookup_template_class_1): Peel off irrelevant template levels
      	from current_template_parms before augmenting the argument
      	list.
      
      gcc/testsuite/ChangeLog:
      
      	PR c++/66850
      	* g++.dg/template/pr66850.C: New test.
      
      From-SVN: r225801
      Patrick Palka committed