1. 13 Oct, 2016 37 commits
    • [ARM] Remove redundant TARGET_VFP · 00ea1506
      	* arm.h (TARGET_VFP): Delete.
      	(TARGET_VFPD32): Remove references to TARGET_VFP.
      	(TARGET_VFP3, TARGET_VFP5): Likewise.
      	(TARGET_VFP_SINGLE, TARGET_VFP_DOUBLE): Likewise.
      	(TARGET_NEON_FP16): Likewise.
      	(TARGET_FMA): Likewise.
      	(TARGET_CRYPTO): Likewise.
      	(TARGET_NEON): Likewise.
      	(SECONDARY_OUTPUT_RELOAD_CLASS): Likewise.
      	(FUNCTION_ARG_REGNO_P): Likewise.
      	* arm.c (arm_option_check_internal): Likewise.
      	(arm_option_override): Likewise.
      	(use_return_insn): Likewise.
      	(arm_function_value_regno_p): Likewise.
      	(arm_apply_result_size): Likewise.
      	(use_vfp_abi): Likewise.
      	(arm_legitimate_address_outer_p): Likewise.
      	(thumb2_legitimate_address_p): Likewise.
      	(arm_legitimate_index_p): Likewise.
      	(thumb2_legitimate_index_p): Likewise.
      	(arm_legitimate_address): Likewise.
      	(arm_get_vfp_saved_size): Likewise.
      	(arm_emit_vfp_multi_reg_pop): Likewise.
      	(arm_get_frame_offsets): Likewise.
      	(arm_save_coproc_regs): Likewise.
      	(arm_hard_regno_mode_ok): Likewise.
      	(arm_expand_epilogue_apcs_frame): Likewise.
      	(arm_expand_epilogue): Likewise.
      	(arm_file_start): Likewise.
      	(arm_conditional_register_usage): Likewise.
      	(arm_validize_comparison): Use vfp_compare_operand directly.
      	* arm-builtins.c (arm_init_builtins): Remove references to TARGET_VFP.
      	(arm_expand_vfp_builtin): Use TARGET_HARD_FLOAT for detecting
      	unsupported usage.
      	(arm_atomic_assign_expand_fenv): Likewise.
      	* arm.md (divsf3): Likewise.
      	(arm_negsi2): Likewise.
      	(absdf2): Likewise.
      	(arm_movdi): Likewise.
      	(arm_movt): Likewise.
      	(cbranchsf4): Change predicate to vfp_compare_operand.
      	(cbranchdf4): Change predicate to vfp_compare_operand.
      	(cstorehf4): Change predicate to vfp_compare_operand.
      	(cstoresf4): Change predicate to vfp_compare_operand.
      	(cstoredf4): Change predicate to vfp_compare_operand.
      	(vfp_pop_multiple_with_writeback): Remove references to TARGET_VFP.
      	(movhi_insn_arch4, movhi_bytes): Likewise.
      	* constraints.md (Dt): Likewise.
      	(Dp): Likewise.
      	* iterators.md (SDF): Likewise.
      	* predicates.md (arm_float_compare_operand): Delete.
      	(const_double_vcvt_power_of_two_reciprocal): Remove references to
      	TARGET_VFP.
      	(const_double_vcvt_power_of_two): Likewise.
      	* thumb2.md thumb2_movsi_insn): Likewise.
      	* vfp.md (arm_movhi_vfp, thumb2_movhi_vfp): Likewise.
      	(movhf_vfp): Likewise.
      	(arm_movsi_vfp, thumb2_movsi_vfp): Likewise.
      	(movdi_vfp, movdi_vfp_cortexa8): Likewise.
      	(movsf_vfp, thumb2_movsf_vfp): Likewise.
      	(movdf_vfp, thumb2_movdf_vfp): Likewise.
      	(movsfcc_vfp, abssf2_vfp, negsf2_vfp, addsf3_vfp): Likewise.
      	(subsf3_vfp, divsf3_vfp): Likewise.
      	(mulsf3_vfp, mulsf3negsf_vfp, negmulsf3_vfp): Likewise.
      	(mulsf3addsf_vfp, (mulsf3subsf_vfp, mulsf3negsfaddsf_vfp): Likewise.
      	(mulsf3negsfsubsf_vfp): Likewise.
      	(truncsisf2_vfp, fixuns_truncsfsi2, floatsisf2_vfp): Likewise.
      	(floatunssisf2, sqrtsf2_vfp): Likewise.
      	(movcc_vfp): Likewise.
      	(cmpsf_split_vfp, cmpsf_trap_split_vfp): Likewise.
      	(cmpsf_vfp, cmpsf_trap_vfp): Likewise.
      	(push_multi_vfp): Likewise.
      	(set_fpscr, get_fpscr): Likewise.
      	* arm-c.c (arm_cpu_builtins): Unconditionally define __VFP_FP__.
      
      From-SVN: r241118
      Richard Earnshaw committed
    • [multiple changes] · ec225529
      2016-10-13  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch6.adb (Analyze_Expression_Function):
      	Remove the aspects of the original expression function has been
      	rewritten into a subprogram declaration or a body. Reinsert the
      	aspects once they have been analyzed.
      
      2016-10-13  Tristan Gingold  <gingold@adacore.com>
      
      	* exp_ch9.adb (Expand_N_Asynchronous_Select): Return immediately
      	on restricted profile.
      
      2016-10-13  Javier Miranda  <miranda@adacore.com>
      
      	* sem_prag.adb
      	(Process_Compile_Time_Warning_Or_Error): Register the pragma
      	for its validation after the backend has been called only if its
      	expression has some occurrence of attributes 'size or 'alignment
      	* table.ads (Release_Threshold): New formal.
      	(Release): Adding documentation of its new functionality.
      	* table.adb (Release): Extend its functionality with a
      	Release_Threshold.
      	* nlists.adb (Next_Node table): Set its Release_Threshold.
      	* atree.adb (Orig_Nodes table): Set its Release_Threshold.
      	* atree.ads (Nodes table): Set its Release_Threshold.
      	(Flags table): Set its Release_Threshold.
      	* alloc.ads (Nodes_Release_Threshold): New constant declaration.
      	(Orig_Nodes_Release_Threshold): New constant declaration.
      	* debug.adb (switch d.9): Left free.
      	* gnat1drv.adb (Post_Compilation_Validation_Checks): Enable
      	validation of pragmas Compile_Time_Error and Compile_Time_Warning.
      
      From-SVN: r241117
      Arnaud Charlet committed
    • [ARM] Remove redundant model field from FPU descriptions · 62c1b965
      	* arm.h (TARGET_VFP): Unconditionally define to 1.
      	(arm_fpu_desc): Remove 'model' field.
      	(TARGET_FPU_MODEL): Delete.
      	* arm.c (all_fpus): Don't initialize the model field.
      	(arm_can_inline_p): Don't check the FPU model.
      	* arm-fpus.def: Remove redundant model field from all FPU
      	descriptions.
      
      From-SVN: r241116
      Richard Earnshaw committed
    • [multiple changes] · 8eb8461d
      2016-10-13  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch6.adb (Create_Extra_Formals): Generate
      	an Itype reference for the object extra formal in case the
      	subprogram is called within the same or nested scope.
      
      2016-10-13  Claire Dross  <dross@adacore.com>
      
      	* sem_ch5.adb (Analyze_Iterator_Specification):
      	Also create a renaming in GNATprove mode.
      
      2016-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* freeze.adb (Freeze_Fixed_Point_Type): in SPARK mode, the
      	given bounds of the type must be strictly representable, and the
      	range reduction by one delta ("shaving") allowed by the Ada RM,
      	is not applicable in SPARK.
      
      2016-10-13  Javier Miranda  <miranda@adacore.com>
      
      	* debug.adb (switch d.9): Used to temporarily disable the support
      	needed for this enhancement since it causes regressions with
      	large sources.
      	* gnat1drv.adb (Post_Compilation_Validation_Checks): Temporarily
      	leave the validation of pragmas Compile_Time_Warning and
      	Compile_Time_Error under control of -gnatd.9/
      
      From-SVN: r241115
      Arnaud Charlet committed
    • * i-vxinco.adb, i-vxinco.ads: New files. · 870ce4d5
      From-SVN: r241114
      Ed Falis committed
    • Code cleanup. · 07820c51
      From-SVN: r241113
      Arnaud Charlet committed
    • [multiple changes] · 5dc203d2
      2016-10-13  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch10.adb (Entity_Needs_Body): A generic
      	subprogram renaming needs a body if the renamed unit is declared
      	outside the current compilation unit.
      
      2016-10-13  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sinfo.ads, sem_ch12.adb, sem.adb, expander.adb, sem_res.ads,
      	sem_ch4.adb, sem_ch8.adb, s-memory.adb: Minor reformatting.
      
      2016-10-13  Vincent Celier  <celier@adacore.com>
      
      	* gnatcmd.adb: Delete all temporary files when invoked as gnat
      	list -V -P ...
      
      2016-10-13  Ed Falis  <falis@adacore.com>
      
      	* impunit.adb: add i-vxinco.ads.
      	* s-interr-vxworks.adb: add hook for user interrupt connection routine.
      
      From-SVN: r241112
      Arnaud Charlet committed
    • Restore __bind_simple for compat symbols · 3396fcc0
      	* src/c++11/compatibility-thread-c++0x.cc (_Bind_simple)
      	(_Bind_simple_helper, __bind_simple): Restore for ABI compat symbols.
      
      From-SVN: r241111
      Jonathan Wakely committed
    • s-interr-hwint.adb, [...]: Rename s-interr-hwint.adb to s-interr-vxworks.adb. · 6c25a676
      2016-10-13  Ed Falis  <falis@adacore.com>
      
      	* s-interr-hwint.adb, s-interr-vxworks.adb: Rename s-interr-hwint.adb
      	to s-interr-vxworks.adb.
      
      From-SVN: r241110
      Ed Falis committed
    • exp_ch7.adb, [...]: Minor typo fixes and reformatting. · c9d2e84b
      2016-10-13  Gary Dismukes  <dismukes@adacore.com>
      
      	* exp_ch7.adb, einfo.ads, sem_prag.adb, sem_prag.ads, sem.ads,
      	sem_attr.adb, sem_case.adb, sem_ch13.ads: Minor typo fixes and
      	reformatting.
      
      From-SVN: r241109
      Gary Dismukes committed
    • re PR target/77826 (ICE in decompose, at wide-int.h:928 w/ -m64 -O2 and above) · 2eef1fc1
      2016-10-13  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/77826
      	* genmatch.c (struct capture): Add value_match member.
      	(commutate): Preserve value_match.
      	(lower_opt_convert): Likewise.
      	(lower_cond): Likewise.
      	(replace_id): Likewise.
      	(struct dt_operand): Add value_match member.
      	(decision_tree::cmp_node): Compare it.
      	(decision_tree::insert_operand): Honor it when finding and
      	when appending a DT_MATCH.
      	(dt_operand::gen_match_op): Generate a type check after
      	operand_equal_p if ! value_match for both GENERIC and GIMPLE.
      	(parser::get_internal_capture_id): New helper.
      	(parser::finish_match_operand): New function lowering @@<id>.
      	(parser::parse_capture): Parse @@<id> as value-match.
      	(parser::parse_expr): Use get_internal_capture_id.
      	(parser::parse_simplify): Call finish_match_operand.
      	(walk_captures): New helper.
      	* match.pd (X - (X / Y) * Y -> X % Y): Use value-matching instead
      	of operand_equal_p.
      	((X /[ex] A) * A -> X): Likewise.
      	((X | Y) ^ X -> Y & ~ X): Handle constants properly by using
      	convert[12] and value-matching.
      	((A | B) & (A | C) ->  A | (B & C)): Likewise.
      	((X | Y) | Y -> X | Y): Likewise.
      	((X ^ Y) ^ Y -> X): Likewise.
      	(A - (A & B) -> ~B & A): Likewise.
      	((T)(P + A) - (T)P -> (T) A): Likewise.
      	((T)P - (T)(P + A) -> -(T) A): Likewise.
      	((T)(P + A) - (T)(P + B) -> (T)A - (T)B): Likewise.
      	* doc/match-and-simplify.texi: Amend capture section.
      
      From-SVN: r241108
      Richard Biener committed
    • sem_prag.ads (Process_Compile_Time_Warning_Or_Error): New overloaded subprogram… · a946a5c3
      sem_prag.ads (Process_Compile_Time_Warning_Or_Error): New overloaded subprogram that factorizes code executed as part of the regular...
      
      2016-10-13  Javier Miranda  <miranda@adacore.com>
      
      	* sem_prag.ads (Process_Compile_Time_Warning_Or_Error): New
      	overloaded subprogram that factorizes code executed as part
      	of the regular processing of these pragmas and as part of its
      	validation after invoking the backend.
      	* sem_prag.adb (Process_Compile_Time_Warning_Or_Error): New
      	subprogram.
      	(Process_Compile_Time_Warning_Or_Error): If the
      	condition is known at compile time then invoke the new overloaded
      	subprogram; otherwise register the pragma in a table to validate
      	it after invoking the backend.
      	* sem.ads, sem.adb (Unlock): New subprogram.
      	* sem_attr.adb (Analyze_Attribute [Size]): If we are processing
      	pragmas Compile_Time_Warning and Compile_Time_Errors after the
      	backend has been called then evaluate this attribute if 'Size
      	is known at compile time.
      	* gnat1drv.adb (Post_Compilation_Validation_Checks): Validate
      	compile time warnings and errors.
      	* sem_ch13.ads, sem_ch13.adb (Validate_Compile_Time_Warning_Error):
      	New subprogram.
      	(Validate_Compile_Time_Warning_Errors): New subprogram.
      
      From-SVN: r241107
      Javier Miranda committed
    • [multiple changes] · c877ae8d
      2016-10-13  Yannick Moy  <moy@adacore.com>
      
      	* sem_prag.adb (Analyze_Refined_Depends_In_Decl_Part): Adapt to
      	optional refinement for abstract states with only partial refinement
      	visible.
      
      2016-10-13  Justin Squirek  <squirek@adacore.com>
      
      	* sem_ch13.adb: Minor correction in comment in
      	Analyze_Aspect_Specifications
      	* sem_prag.adb: Minor reformatting.
      
      2016-10-13  Thomas Quinot  <quinot@adacore.com>
      
      	* s-stratt-xdr.adb: Disable compiler unit warnings.
      
      2016-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (Visible_Component): In an instance body, check
      	whether the component may be hidden in a selected component by
      	a homonym that is a primitive operation of the type of the prefix.
      
      From-SVN: r241106
      Arnaud Charlet committed
    • [ARC] Fix mul32x16 patterns. · c5955224
      gcc/
      2016-10-13  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* config/arc/arc.md (umul_600): Change.
      	(umul64_600): Likewise.
      
      From-SVN: r241105
      Claudiu Zissulescu committed
    • [ARC] Update INSN_LENGTH_ALIGNMENT. · d4fe8839
      gcc/
      2016-10-13  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* config/arc/arc.h (INSN_LENGTH_ALIGNMENT): Change.
      
      From-SVN: r241104
      Claudiu Zissulescu committed
    • tree-vect-loop.c (loop_niters_no_overflow): New func. · b4c32fe0
      	* tree-vect-loop.c (loop_niters_no_overflow): New func.
      	(vect_transform_loop): Call loop_niters_no_overflow.  Pass the
      	no-overflow information to vect_do_peeling_for_loop_bound and
      	vect_gen_vector_loop_niters.
      
      From-SVN: r241102
      Bin Cheng committed
    • l_fma_float_1.c: Revise test. · fcd27666
      	gcc/testsuite
      	* gcc.target/i386/l_fma_float_1.c: Revise test.
      	* gcc.target/i386/l_fma_float_2.c: Ditto.
      	* gcc.target/i386/l_fma_float_3.c: Ditto.
      	* gcc.target/i386/l_fma_float_4.c: Ditto.
      	* gcc.target/i386/l_fma_float_5.c: Ditto.
      	* gcc.target/i386/l_fma_float_6.c: Ditto.
      	* gcc.target/i386/l_fma_double_1.c: Ditto.
      	* gcc.target/i386/l_fma_double_2.c: Ditto.
      	* gcc.target/i386/l_fma_double_3.c: Ditto.
      	* gcc.target/i386/l_fma_double_4.c: Ditto.
      	* gcc.target/i386/l_fma_double_5.c: Ditto.
      	* gcc.target/i386/l_fma_double_6.c: Ditto.
      
      From-SVN: r241101
      Bin Cheng committed
    • tree-predcom.c (tree_predictive_commoning_loop): Skip loop that only iterates 1 time. · b8a4b8c8
      	* tree-predcom.c (tree_predictive_commoning_loop): Skip loop that only
      	iterates 1 time.
      
      	gcc/testsuite
      	* gfortran.dg/vect/fast-math-mgrid-resid.f: New test string.
      
      From-SVN: r241100
      Bin Cheng committed
    • tree-vect-loop-manip.c (adjust_vec_debug_stmts): Don't release adjust_vec automatically. · a5e3d614
      	* tree-vect-loop-manip.c (adjust_vec_debug_stmts): Don't release
      	adjust_vec automatically.
      	(slpeel_add_loop_guard): Remove param cond_expr_stmt_list.  Rename
      	param exit_bb to guard_to.
      	(slpeel_checking_verify_cfg_after_peeling):
      	(set_prologue_iterations):
      	(create_lcssa_for_virtual_phi): New func which is factored out from
      	slpeel_tree_peel_loop_to_edge.
      	(slpeel_tree_peel_loop_to_edge):
      	(iv_phi_p): New func.
      	(vect_can_advance_ivs_p): Call iv_phi_p.
      	(vect_update_ivs_after_vectorizer): Call iv_phi_p.  Directly insert
      	new gimple stmts in basic block.
      	(vect_do_peeling_for_loop_bound):
      	(vect_do_peeling_for_alignment):
      	(vect_gen_niters_for_prolog_loop): Rename to...
      	(vect_gen_prolog_loop_niters): ...Rename from.  Change parameters and
      	adjust implementation.
      	(vect_update_inits_of_drs): Fix code style issue.  Convert niters to
      	sizetype if necessary.
      	(vect_build_loop_niters): Move to here from tree-vect-loop.c.  Change
      	it to external function.
      	(vect_gen_scalar_loop_niters, vect_gen_vector_loop_niters): New.
      	(vect_gen_vector_loop_niters_mult_vf): New.
      	(slpeel_update_phi_nodes_for_loops): New.
      	(slpeel_update_phi_nodes_for_guard1): Reimplement.
      	(find_guard_arg, slpeel_update_phi_nodes_for_guard2): Reimplement.
      	(slpeel_update_phi_nodes_for_lcssa, vect_do_peeling): New.
      	* tree-vect-loop.c (vect_build_loop_niters): Move to file
      	tree-vect-loop-manip.c
      	(vect_generate_tmps_on_preheader): Delete.
      	(vect_transform_loop): Rename vectorization_factor to vf.  Call
      	vect_do_peeling instead of vect_do_peeling-* functions.
      	* tree-vectorizer.h (vect_do_peeling): New decl.
      	(vect_build_loop_niters, vect_gen_vector_loop_niters): New decls.
      	(vect_do_peeling_for_loop_bound): Delete.
      	(vect_do_peeling_for_alignment): Delete.
      
      From-SVN: r241099
      Bin Cheng committed
    • tree-vect-loop-manip.c (slpeel_tree_duplicate_loop_to_edge_cfg): Put duplicated… · 3884da6f
      tree-vect-loop-manip.c (slpeel_tree_duplicate_loop_to_edge_cfg): Put duplicated loop after its preheader and after the original loop.
      
      	* tree-vect-loop-manip.c (slpeel_tree_duplicate_loop_to_edge_cfg): Put
      	duplicated loop after its preheader and after the original loop.
      
      From-SVN: r241098
      Bin Cheng committed
    • tree-vect-loop.c (vect_analyze_loop_2): Check and skip loop if it has no enough… · 328ba117
      tree-vect-loop.c (vect_analyze_loop_2): Check and skip loop if it has no enough iterations for LOOP_VINFO_PEELING_FOR_GAPS.
      
      	* tree-vect-loop.c (vect_analyze_loop_2): Check and skip loop if it
      	has no enough iterations for LOOP_VINFO_PEELING_FOR_GAPS.
      
      	gcc/testsuite
      	* gcc.dg/vect/vect-98.c: Refine test case.
      	* gcc.dg/vect/vect-strided-a-u8-i8-gap2.c: Increase niters.
      	* gcc.dg/vect/vect-strided-u8-i8-gap2.c: Ditto.
      	* gcc.dg/vect/vect-strided-u8-i8-gap4.c: Ditto.
      
      From-SVN: r241097
      Bin Cheng committed
    • tree-vect-loop.c (vectorizable_live_operation): Support handling for live… · 37cf9f4f
      tree-vect-loop.c (vectorizable_live_operation): Support handling for live variable outside loop but not in lcssa form.
      
      	* tree-vect-loop.c (vectorizable_live_operation): Support handling
      	for live variable outside loop but not in lcssa form.
      
      From-SVN: r241096
      Bin Cheng committed
    • cfg.c (reset_original_copy_tables): New func. · d96004b8
      	* cfg.c (reset_original_copy_tables): New func.
      	* cfg.h (reset_original_copy_tables): New decl.
      
      From-SVN: r241095
      Bin Cheng committed
    • re PR c/77946 (-Wimplicit-fallthrough=1 ICE: tree check: expected tree that… · 1a1ab05e
      re PR c/77946 (-Wimplicit-fallthrough=1 ICE: tree check: expected tree that contains ‘decl with visibility’ structure, have ‘label_decl’)
      
      	PR c/77946
      	* tree.h (FALLTHROUGH_LABEL_P): Use private_flag instead of
      	public_flag.
      	* varasm.c (default_binds_local_p_3): Formatting fix.
      
      	* c-c++-common/Wimplicit-fallthrough-34.c: New test.
      
      From-SVN: r241094
      Jakub Jelinek committed
    • Replace __bind_simple with std::thread::__make_invoker · 5579170b
      	* include/std/functional (_Bind_simple, _Bind_simple_helper)
      	(__bind_simple): Remove.
      	* include/std/future: Include <bits/invoke.h> instead of <functional>.
      	(__future_base::_Task_state::_M_run)
      	(__future_base::_Task_state::_M_run_delayed): Use lambda expressions
      	instead of __bind_simple.
      	(__future_base::_Task_state::_S_maybe_wrap_ref): Remove.
      	(async): Use thread::__make_invoker instead of __bind_simple.
      	* include/std/thread: Include <tuple> and <bits/invoke.h> instead of
      	<functional>.
      	(thread::_Invoker, thread::__make_invoker): Define helpers to do
      	INVOKE(DECAY_COPY(f), DECAY_COPY(args)...).
      
      From-SVN: r241093
      Jonathan Wakely committed
    • tree-vect-loop-manip.c (slpeel_can_duplicate_loop_p): Fix code style issue. · 62fdbf29
      	* tree-vect-loop-manip.c (slpeel_can_duplicate_loop_p): Fix code
      	style issue.
      	(vect_do_peeling_for_loop_bound, vect_do_peeling_for_alignment):
      	Remove useless code.
      
      From-SVN: r241092
      Bin Cheng committed
    • Fix exception-specifications for std::_Not_fn · cc06c7f6
      	* include/std/functional (_Not_fn): Make exception specifications
      	depend on whether negating the result can throw.
      	* testsuite/20_util/not_fn/1.cc: Move to ...
      	* testsuite/20_util/function_objects/not_fn/1.cc: ... here. Add tests
      	for types that can throw when negated and that cannot be negated.
      
      From-SVN: r241091
      Jonathan Wakely committed
    • Do not merge BBs with a different EH landing pads (PR · 27947670
      	PR tree-optimization/77943
      	* g++.dg/tree-ssa/pr77943.C: New test.
      	PR tree-optimization/77943
      	* tree-ssa-tail-merge.c (merge_stmts_p): Do not merge BBs with
      	a different EH landing pads.
      
      From-SVN: r241090
      Martin Liska committed
    • Fix exception-specification of std::invoke · 3e0c9334
      	* include/bits/invoke.h (__invoke): Fix exception-specification.
      	* include/std/functional (invoke): Likewise.
      	* testsuite/20_util/function_objects/invoke/1.cc: New test.
      
      From-SVN: r241089
      Jonathan Wakely committed
    • re PR fortran/72832 ([OOP] ALLOCATE with SOURCE fails to allocate requested dimensions) · 92c5266b
      gcc/fortran/ChangeLog:
      
      2016-09-01  Andre Vehreschild  <vehre@gcc.gnu.org>
      
      	PR fortran/72832
      	* trans-expr.c (gfc_copy_class_to_class): Add generation of
      	runtime array bounds check.
      	* trans-intrinsic.c (gfc_conv_intrinsic_size): Add a crutch to
      	get the descriptor of a function returning a class object.
      	* trans-stmt.c (gfc_trans_allocate): Use the array spec on the
      	array to allocate instead of the array spec from source=.
      
      gcc/testsuite/ChangeLog:
      
      2016-09-01  Andre Vehreschild  <vehre@gcc.gnu.org>
      
      	PR fortran/72832
      	* gfortran.dg/allocate_with_source_22.f03: New test.
      	* gfortran.dg/allocate_with_source_23.f03: New test.  Expected to
      	fail.
      
      From-SVN: r241088
      Andre Vehreschild committed
    • re PR target/77957 (Undefined .LCTOC0 with -fstack-protector-strong -mminimal-toc -O0 on ppc64) · 1202f33e
      	PR target/77957
      	* hooks.h (hook_tree_void_null): Declare.
      	* hooks.c (hook_tree_void_null): New function.
      	* langhooks.c (lhd_return_null_tree_v): Remove.
      	* langhooks-def.h (lhd_return_null_tree_v): Remove.
      	* cfgexpand.c (stack_protect_prologue): If guard_decl is NULL,
      	set y to const0_rtx.
      	* function.c (stack_protect_epilogue): Likewise.
      	* config/tilepro/tilepro.c (TARGET_STACK_PROTECT_GUARD): Redefine
      	if TARGET_THREAD_SSP_OFFSET is defined.
      	* config/s390/s390.c (TARGET_STACK_PROTECT_GUARD): Likewise.
      	* config/sparc/sparc.c (TARGET_STACK_PROTECT_GUARD): Likewise.
      	* config/tilegx/tilegx.c (TARGET_STACK_PROTECT_GUARD): Likewise.
      	* config/rs6000/rs6000.c (TARGET_STACK_PROTECT_GUARD): Likewise.
      	* config/i386/i386.c (TARGET_STACK_PROTECT_GUARD): Likewise.
      	(ix86_stack_protect_guard): New function.
      c/
      	* c-objc-common.h (LANG_HOOKS_GETDECLS): Use hook_tree_void_null
      	instead of lhd_return_null_tree_v.
      ada/
      	* gcc-interface/misc.c (LANG_HOOKS_GETDECLS): Use hook_tree_void_null
      	instead of lhd_return_null_tree_v.
      
      From-SVN: r241087
      Jakub Jelinek committed
    • movhi_movw.c: Enable test for ARM mode. · 90bca4ed
      2016-10-12  Thomas Preud'homme  <thomas.preudhomme@arm.com>
      
          gcc/testsuite/
          * gcc.target/arm/movhi_movw.c: Enable test for ARM mode.
          * gcc.target/arm/movsi_movw.c: Likewise.
          * gcc.target/arm/movdi_movw.c: Likewise and adapt scan-assembler
          directive to work on big endian targets.
      
      From-SVN: r241086
      Thomas Preud'homme committed
    • dwarf2out.c (tree_add_const_value_attribute): Do not try rtl_for_decl_init during early phase. · cea4bad1
      2016-10-13  Richard Biener  <rguenther@suse.de>
      
      	* dwarf2out.c (tree_add_const_value_attribute): Do not try
      	rtl_for_decl_init during early phase.
      	(gen_variable_die): Do not create locations during early phase.
      	(gen_label_die): Likewise.
      	(decls_for_scope): Do not waste time handling BLOCK_NONLOCALIZED_VARs
      	twice.
      
      From-SVN: r241085
      Richard Biener committed
    • syscall: don't use pt_regs in clone_linux.c · 80b489eb
          
          It's unnecessary and it reportedly breaks the build on arm64 GNU/Linux.
          
          Reviewed-on: https://go-review.googlesource.com/30978
      
      From-SVN: r241084
      Ian Lance Taylor committed
    • EVRP - Push op1 value range before pushing op0 value range. · 0011af7b
      gcc/ChangeLog:
      
      2016-10-12  Richard Biener  <rguenther@suse.de>
      
      	* tree-vrp.c (evrp_dom_walker::try_find_new_range): Renamed from
      	try_add_new_range and made to eturn new range.
      	(evrp_dom_walker::before_dom_children): Push op1 value range before
      	pushing op0 value range.
      
      
      gcc/testsuite/ChangeLog:
      
      2016-10-12  Kugan Vivekanandarajah  <kuganv@linaro.org>
      
      	* gcc.dg/tree-ssa/evrp6.c: New test.
      
      From-SVN: r241083
      Kugan Vivekanandarajah committed
    • re PR tree-optimization/77937 (ICE: in replace_one_candidate, at… · 457e189d
      re PR tree-optimization/77937 (ICE: in replace_one_candidate, at gimple-ssa-strength-reduction.c:3370)
      
      2016-10-12  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	PR tree-optimization/77937
      	* gimple-ssa-strength-reduction.c (analyze_increments): Use
      	POINTER_TYPE_P on the candidate type to determine whether
      	candidates in this chain require pointer arithmetic.
      
      From-SVN: r241082
      Bill Schmidt committed
    • Daily bump. · 72640c17
      From-SVN: r241081
      GCC Administrator committed
  2. 12 Oct, 2016 3 commits