1. 10 Oct, 2013 12 commits
    • [multiple changes] · 9e92ad49
      2013-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch3.adb (Expand_N_Variant_Part): Expand statically
      	predicated subtype which appears in Discrete_Choices list.
      	* exp_ch5.adb (Expand_N_Case_Statement): Expand statically
      	predicated subtype which appears in Discrete_Choices list of
      	case statement alternative.
      	* exp_util.ads, exp_util.adb (Expand_Static_Predicates_In_Choices): New
      	procedure.
      	* sem_case.adb: Minor reformatting (Analyze_Choices): Don't
      	expand out Discrete_Choices that are names of subtypes with
      	static predicates. This is now done in the analyzer so that the
      	-gnatct tree is properly formed for ASIS.
      	* sem_case.ads (Generic_Choices_Processing): Does not apply
      	to aggregates any more, so change doc accordingly, and remove
      	unneeded Get_Choices argument.
      	* sem_ch3.adb (Analyze_Variant_Part): Remove no
      	longer used Get_Choices argument in instantiation of
      	Generic_Choices_Processing.
      	* sem_ch4.adb (Analyze_Case_Expression): Remove no
      	longer used Get_Choices argument in instantiation of
      	Generic_Choices_Processing.
      	* sem_ch5.adb (Analyze_Case_Statement): Remove no
      	longer used Get_Choices argument in instantiation of
      	Generic_Choices_Processing.
      	* sinfo.ads: For N_Variant_Part, and N_Case_Statement_Alternative,
      	document that choices that are names of statically predicated
      	subtypes are expanded in the code generation tree passed to the
      	back end, but not in the ASIS tree generated for -gnatct.
      
      2013-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch7.adb: Revert previous change.
      
      2013-10-10  Gary Dismukes  <dismukes@adacore.com>
      
      	* sem_ch13.adb (Analyze_Attribute_Definition_Clause): In the case where
      	the Storage_Pool aspect is specified by an aspect clause and a
      	renaming is used to capture the evaluation of the pool name,
      	insert the renaming in front of the aspect's associated entity
      	declaration rather than in front of the corresponding attribute
      	definition (which hasn't been appended to the declaration
      	list yet).
      
      2013-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch6.adb (Is_Interface_Conformant): The controlling type
      	of the interface operation is obtained from the ultimate alias
      	of the interface primitive parameter, because that may be in
      	fact an implicit inherited operation whose signature involves
      	the type extension and not the desired interface.
      
      2013-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* par-ch13.adb (Aspect_Specifications_Present): In Ada 2012,
      	recognize an aspect specification with a misspelled name if it
      	is followed by a a comma or semicolon.
      
      2013-10-10  Vadim Godunko  <godunko@adacore.com>
      
      	* s-atocou.adb, s-atocou.ads, s-atocou-x86.adb, s-atocou-builtin.adb:
      	Fix copyright notice.
      
      2013-10-10  Yannick Moy  <moy@adacore.com>
      
      	* lib-xref-spark_specific.adb (Enclosing_Subprogram_Or_Package): Get
      	enclosing subprogram for precondition/postcondition/contract cases.
      
      From-SVN: r203350
      Arnaud Charlet committed
    • [multiple changes] · 11d59a86
      2013-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Minor fix.
      
      2013-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
      	Address): Remove the Comes_From_Source test for the overlap
      	warning.
      
      2013-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* sem_util.adb: Minor code reorganization (use Nkind_In).
      	* sem_warn.adb: Minor code reorganization (optimization in
      	Check_Unset_Reference).
      	* exp_ch9.adb, exp_ch4.adb, sinfo.ads: Minor reformatting.
      
      2013-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch7.adb (Install_Parent_Private_Declarations): When
      	instantiating a child unit, do not install private declaration of
      	a non-generic ancestor of the generic that is also an ancestor
      	of the current unit: its private part will be installed when
      	private part of ancestor itself is analyzed.
      
      2013-10-10  Thomas Quinot  <quinot@adacore.com>
      
      	* freeze.adb (Check_Component_Storage_Order): Retrieve component
      	aliased status from type entities directly instead of going back
      	to original component definition.
      	* sem_ch7.adb: Minor reformatting.
      
      From-SVN: r203349
      Arnaud Charlet committed
    • [multiple changes] · 27a8f150
      2013-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch13.adb (Analyze_Aspect_Specifications): For Address
      	attribute, consider it to be set in source, because of aliasing
      	considerations.
      	(Analyze_Attribute_Definition_Clause): For the
      	purpose of warning on overlays, take into account the aspect case.
      
      2013-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads,
      	a-cofove.ads: Minor reformatting.
      
      2013-10-10  Arnaud Charlet  <charlet@adacore.com>
      
      	* gnat_ugn.texi: Remove obsolete mention to -laddr2line.
      
      2013-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch4.adb (Expand_N_Case_Expression):  Indicate that the
      	generated variable used as a target of the expression needs
      	no initialization.
      
      2013-10-10  Jose Ruiz  <ruiz@adacore.com>
      
      	* exp_util.adb (Corresponding_Runtime_Package): Remove the condition
      	related to No_Dynamic_Attachment which was wrong. Protected types
      	with interrupt handlers (when not using a restricted profile)
      	are always treated as protected types with entries, regardless
      	of the No_Dynamic_Attachment restriction.
      	* exp_ch9.adb (Expand_N_Protected_Type_Declaration): Simplify the code
      	using the result of Corresponding_Runtime_Package.
      	(Install_Private_Data_Declarations): When having
      	static handlers and a non restricted profile, we use the
      	type Static_Interrupt_Protection always, so we removed an
      	extra wrong condition looking at the No_Dynamic_Attachment
      	restriction. Simplify the code using the result of
      	Corresponding_Runtime_Package.
      	(Make_Initialize_Protection): Simplify the code using
      	the result of Corresponding_Runtime_Package.
      	(Install_Private_Data_Declaration): The No_Dynamic_Attachment
      	restriction has nothing to do with static handlers. Remove the extra
      	erroneous condition that was creating the wrong data type.
      
      2013-10-10  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_util.adb (Is_Object_Reference): Attribute
      	'Old produces an object reference.
      	* gnat_rm.texi: Define accessibility level of
      	X'Update(...) result.
      
      From-SVN: r203348
      Arnaud Charlet committed
    • [multiple changes] · 2fc07285
      2013-10-10  Yannick Moy  <moy@adacore.com>
      
      	* gnat_rm.texi, a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
      	a-cforse.ads, a-cofove.ads: Update comment and doc of formal containers
      
      2013-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Analyze_Aspect_Specifications): For Pre/Post
      	conditions that apply to a subprogram body, preserve the placement
      	and order of the generated pragmas, which must appear before
      	other declarations in the body.
      
      From-SVN: r203347
      Arnaud Charlet committed
    • [multiple changes] · c1645ac8
      2013-10-10  Bob Duff  <duff@adacore.com>
      
      	* gnat_ugn.texi: Add gnat2xml doc.
      
      2013-10-10  Doug Rupp  <rupp@adacore.com>
      
      	* s-vxwork-arm.ads: Fix interface to FP_CONTEXT.
      
      2013-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Analyze_Aspect_Specification): An aspect Import
      	on a variable need not have a convention specified, as long as
      	the implicit convention of the object, obtained from its type,
      	is Ada or Ada-related.
      
      2013-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* cstand.adb (Standard_Unsigned_64): New internal type.
      	* gnat_rm.texi: Update documentation on To_Address.
      	* sem_attr.adb (Analyze_Attribute, case To_Address): Fix
      	problem with out of range static values given as literals or
      	named numbers.
      	* stand.ads (Standard_Unsigned_64): New internal type.
      	* stand.adb: Minor reformatting.
      
      From-SVN: r203346
      Arnaud Charlet committed
    • [multiple changes] · f0e7963f
      2013-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch4.adb (Analyze_Selected_Component,
      	Has_Mode_Conformant_Spec): If selected component may be an
      	indexing of a parameterless call to a protected function, and
      	expansion is disabled, this is a valid candidate interpretation.
      
      2013-10-10  Arnaud Charlet  <charlet@adacore.com>
      
      	* gnat_ugn.texi: Minor editing.
      
      From-SVN: r203345
      Arnaud Charlet committed
    • [multiple changes] · 0c5dba7f
      2013-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* gnatlink.adb: Minor reformatting.
      
      2013-10-10  Yannick Moy  <moy@adacore.com>
      
      	* debug.adb: Free flag d.E and change doc for flag d.K.
      
      2013-10-10  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_prag.adb (Check_Precondition_Postcondition): If the
      	pragma comes from an aspect spec, and the subprogram is a
      	library unit, treat as a ppc in a declarative part in ASIS mode,
      	so that expression in aspect is properly analyzed. In this case
      	there is no later point at which the aspect specification would
      	be examined.
      
      2013-10-10  Bob Duff  <duff@adacore.com>
      
      	* opt.ads: Minor comment fix.
      
      2013-10-10  Vadim Godunko  <godunko@adacore.com>
      
      	* a-coinho-shared.ads, a-coinho-shared.adb: New file.
      	* s-atocou.ads: Add procedure to initialize counter.
      	* s-atocou.adb: Likewise.
      	* s-atocou-builtin.adb: Likewise.
      	* s-atocou-x86.adb: Likewise.
      	* gcc-interface/Makefile.in: Select special version of
      	Indefinite_Holders package on platforms where atomic built-ins
      	are supported. Update tools target pairs for PikeOS.
      
      From-SVN: r203344
      Arnaud Charlet committed
    • [multiple changes] · cd38efa5
      2013-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch3.adb: Minor reformatting.
      
      2013-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* sinput-c.adb (Load_File): Ensure Source_Align alignment.
      	* sinput-d.adb (Create_Debug_Source): Ensure Source_Align alignment.
      	* sinput-l.adb (Create_Instantiation_Source): Ensure Source_Align
      	alignment.
      	(Load_File): Ditto.
      	* sinput.ads, sinput.adb (Get_Source_File_Index): New optimized (single
      	line) version.
      	* types.ads (Source_Align): New definition.
      	(Source_Buffer): Document new alignment requirement.
      
      2013-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* sem_prag.adb (Analyze_Pragma, case Linker_Section): Allow
      	this for types.
      
      2013-10-10  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Minor adjustment to doc for To_Address attribute.
      
      2013-10-10  Vadim Godunko  <godunko@adacore.com>
      
      	* s-stopoo.ads (Root_Storage_Pool): Add pragma
      	Preelaborable_Initialization.
      
      From-SVN: r203343
      Arnaud Charlet committed
    • Daily bump. · 156dbd15
      From-SVN: r203335
      GCC Administrator committed
  2. 09 Oct, 2013 26 commits
    • compiler, runtime: Fix complex division of NaN / 0. · 215552ad
      From-SVN: r203331
      Ian Lance Taylor committed
    • params.def (PARAM_MIN_SIZE_FOR_STACK_SHARING): New param... · 4d5b5e9f
      2013-10-09  Easwaran Raman <eraman@google.com>
      
              * params.def (PARAM_MIN_SIZE_FOR_STACK_SHARING): New param...
              * cfgexpand.c (defer_stack_allocation): ...use here
              * doc/invoke.texi: Add documentation for min-size-for-stack-sharing.
      
      From-SVN: r203330
      Easwaran Raman committed
    • tree-ssa-phiopts.c (rhs_is_fed_for_value_replacement): New function. · c9ef86a1
      	* tree-ssa-phiopts.c (rhs_is_fed_for_value_replacement): New function.
      	(operand_equal_for_value_replacement): New function, extracted from
      	value_replacement and enhanced to catch more cases.
      	(value_replacement): Use operand_equal_for_value_replacement.
      
      	* gcc.dg/tree-ssa/phi-opt-11.c: New test.
      
      From-SVN: r203327
      Zhenqiang Chen committed
    • 58659.cc: Use VERIFY instead of aborting. · fd673f29
      	* testsuite/20_util/shared_ptr/cons/58659.cc: Use VERIFY instead of
      	aborting.
      
      From-SVN: r203325
      Jonathan Wakely committed
    • loop-doloop.c (doloop_modify, [...]): Use get_max_loop_iterations. · 2431114f
      
      	* loop-doloop.c (doloop_modify, doloop_optimize): Use 
      	get_max_loop_iterations.
      
      From-SVN: r203324
      Andrew MacLeod committed
    • re PR c++/58635 ([c++11] ICE with __transaction_atomic and noexcept(false)) · 830ce0a2
      	PR c++/58635
      cp/
      	* semantics.c (finish_return_stmt): Return error_mark_node
      	when error_operand_p of the expr is true.
      	(build_transaction_expr): Check for EXPR_P before setting the
      	expr location.
      testsuite/
      	* g++.dg/tm/pr58635-1.C: New test.
      	* g++.dg/tm/pr58635-2.C: New test.
      
      From-SVN: r203323
      Marek Polacek committed
    • aarch-common.c (arm_early_load_addr_dep): Place comment above function. · 1dd2a9a0
      [gcc/]
      2013-10-09  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
      
      	* config/arm/aarch-common.c (arm_early_load_addr_dep):
      	Place comment above function.
      
      From-SVN: r203322
      Kyrylo Tkachov committed
    • tree-flow.h: Remove all remaining prototypes... · c1bf2a39
      
      
      	* tree-flow.h: Remove all remaining prototypes, enums and structs that
      	are not related to tree-cfg.c.
      	* tree-ssa-address.h: New file.  Relocate prototypes.
      	* tree-ssa-address.c: (struct mem_address): Relocate from tree-flow.h.
      	(addr_for_mem_ref): New.  Combine call to get_address_description and
      	return addr_for_mem_ref.
      	* expr.c (expand_expr_real_1): Use new addr_for_mem_ref routine.
      	* tree-ssa-live.h: Adjust prototypes.
      	* passes.c: Include tree-ssa-live.h.
      	* gimple-pretty-print.h (gimple_dump_bb): Add prototype.
      	* graphite.c (graphite_transform_loops): Make static.
      	(graphite_transforms, gate_graphite_transforms, pass_data_graphite,
      	make_pass_graphite, pass_data_graphite_transforms, 
      	make_pass_graphite_transforms): Relocate here from tree-ssa-loop.c.
      	* ipa-pure-const.c (warn_function_noreturn): Make static.
      	(execute_warn_function_noreturn, gate_warn_function_noreturn,
      	class pass_warn_function_noreturn, make_pass_warn_function_noreturn):
      	Relocate from tree-cfg.c
      	* tree-cfg.c (tree_node_can_be_shared, gimple_empty_block_p): Make
      	static.
      	(execute_warn_function_noreturn, gate_warn_function_noreturn,
      	class pass_warn_function_noreturn, make_pass_warn_function_noreturn):
      	Move to ipa-pure-const.c.
      	(execute_fixup_cfg, class pass_fixup_cfg, make_pass_fixup_cfg): Relocate
      	from tree-optimize.c.
      	* tree-optimize.c (execute_fixup_cfg, class pass_fixup_cfg,
      	make_pass_fixup_cfg): Move to tree-cfg.c.
      	* tree-chrec.h: (enum ev_direction): Relocate here from tree-flow.h.
      	Relocate some prototypes.
      	* tree-data-ref.h (tree_check_data_deps) Add prototype.
      	* tree-dump.c (dump_function_to_file): Remove prototype.
      	Add tree-flow.h to the include file.
      	* tree-dump.h: Remove prototype.
      	* tree-parloops.h: New File.  Add prototypes.
      	* tree-parloops.c (gate_tree_parallelize_loops, tree_parallelize_loops,
      	pass_data_parallelize_loops,  make_pass_parallelize_loops): Relocate
      	from tree-ssa-loop.c.
      	* tree-predcom.c (run_tree_predictive_commoning,
      	gate_tree_predictive_commoning, pass_data_predcom, make_pass_predcom):
      	Relocate here from tree-ssa-loop.c.
      	* tree-ssa-dom.c (tree_ssa_dominator_optimize) Don't call 
      	ssa_name_values.release ().
      	* tree-ssa-threadedge.h: New File.  Relocate prototypes here.
      	(ssa_name_values): Relocate from tree-flow.h.
      	* tree-ssa.h: Include tree-ssa-threadedge.h and tree-ssa-address.h.
      	* tree-ssa-loop.c (run_tree_predictive_commoning,
      	gate_tree_predictive_commoning, pass_data_predcom, make_pass_predcom,
      	graphite_transforms, gate_graphite_transforms, pass_data_graphite,
      	make_pass_graphite, pass_data_graphite_transforms,
      	make_pass_graphite_transforms, gate_tree_parallelize_loops,
      	tree_parallelize_loops, pass_data_parallelize_loops,
      	make_pass_parallelize_loops): Move to other files.
      	* tree-vectorizer.h (lpeel_tree_duplicate_loop_to_edge_cfg): Prototype
      	moved here.
      	* tree.h: Remove prototypes from tree-address.c.
      
      From-SVN: r203320
      Andrew MacLeod committed
    • * gcc.dg/vect/bb-slp-31.c: Add cleanup-tree-dump. · 428e041e
      From-SVN: r203319
      Jakub Jelinek committed
    • tree-flow.h (tm_restart_node, gimple_df): Move to gimple-ssa.h. · cc524fc7
      
      
      	* tree-flow.h (tm_restart_node, gimple_df): Move to gimple-ssa.h.
      	(struct int_tree_map): Move to tree-hasher.h
      	(SCALE, LABEL, PERCENT): Move to gimple.h
      	* tree-flow-inline.h: Delete.  Move functions to other files.
      	(unmodifiable_var_p, ref_contains_array_ref): Unused, so delete.
      	* gimple-ssa.h (tm_restart_node, gimple_df): Relocate from tree-flow.h.
      	(gimple_in_ssa_p, gimple_vop): Relocate from tree-flow-inline.h
      	* gimple.h (imple_stmt_max_uid, set_gimple_stmt_max_uid,
      	inc_gimple_stmt_max_uid, get_lineno): Relocate from tree-flow-inline.h.
      	(SCALE, LABEL, PERCENT): Relocate from tree-flow.h
      	* tree-hasher.h: Don't include tree-flow.h.
      	(struct int_tree_map): Relocate from tree-flow.h.
      	* tree-sra.c (contains_view_convert_expr_p): Relocate from
      	tree-flow-inline.h and make static.
      	* tree-ssa-alias.h (ranges_overlap_p): Relocate from tree-flow-inline.h.
      	* tree-ssa-operands.c (gimple_ssa_operands): Relocate from
      	tree-flow-inline.h and make static.
      	* tree.h (is_global_var, may_be_aliased): Relocate from
      	tree-flow-inline.h.
      	* Makefile.in (GTFILES): Remove tree-flow.h and add gimple-ssa.h.
      	* value-prof.c: No longer include tree-flow-inline.h.
      	* tree-switch-conversion.c: No longer include tree-flow-inline.h.
      
      From-SVN: r203318
      Andrew MacLeod committed
    • tree-flow.h: Move some protoypes. · 71343877
      
      	* tree-flow.h: Move some protoypes.  Include new tree-ssa-loop.h.
      	(struct affine_iv, struct tree_niter_desc): Move to tree-ssa-loop.h.
      	(enum move_pos): Move to tree-ssa-loop-im.h
      	* cfgloop.h: Move some prototypes.
      	(gcov_type_to_double_int): relocate from tree-ssa-loop.niter.c.
      	* tree-flow-inline.h (loop_containing_stmt): Move to tree-ssa-loop.h.
      	* tree-ssa-loop.h: New File.  Include other tree-ssa-loop-*.h files.
      	(struct affine_iv, struct tree_niter_desc): Relocate from tree-flow.h.
      	(loop_containing_stmt): Relocate from tree-flow-inline.h.
      	* tree-ssa-loop-ch.c: (do_while_loop_p): Make static.
      	* tree-ssa-loop-im.c (for_each_index): Move to tree-ssa-loop.c.
      	(enum move_pos): Relocate here.
      	(lsm_tmp_name_add, gen_lsm_tmp_name, get_lsm_tmp_name): Move to
      	tree-ssa-loop.c.
      	(execute_sm_if_changed_flag_set): Change get_lsm_tmp_name call.
      	(tree_ssa_loop_im, gate_tree_ssa_loop_im, pass_data_lim, make_pass_lim):
      	Relocate here from tree-ssa-loop.c.
      	* tree-ssa-loop-ivcanon.c (tree_num_loop_insns): Move to 
      	tree-ssa-loop.c.
      	(loop_edge_to_cancel, unloop_loops): Make static.
      	(tree_ssa_loop_ivcanon, gate_tree_ssa_loop_ivcanon, pass_data_iv_canon,
      	make_pass_iv_canon): Relocate from tree-ssa-loop.c.
      	(tree_complete_unroll, gate_tree_complete_unroll,
      	pass_data_complete_unroll, make_pass_complete_unroll): Relocate here.
      	(tree_complete_unroll_inner, gate_tree_complete_unroll_inner,
      	pass_data_complete_unrolli, make_pass_complete_unrolli): Relocate here.
      	* tree-ssa-loop-ivopts.c: Remove local prototypes.
      	(stmt_invariant_in_loop_p): Remove unused function.
      	* tree-ssa-loop-ivopts.h: New file.  Add prototypes.
      	* tree-ssa-loop-manip.h: New file.  Add prototypes.
      	* tree-ssa-loop-niter.c (record_niter_bound): Move to cfgloop.c.
      	(gcov_type_to_double_int): Move to cfgloop.h.
      	(double_int_cmp, bound_index,
      	estimate_numbers_of_iterations_loop): Make static.
      	(estimated_loop_iterations): Factor out get_estimated_loop_iterations.
      	(max_loop_iterations): Factor out get_max_loop_iterations.
      	(estimated_loop_iterations_int, max_stmt_executions_int): Move to
      	cfgloop.c.
      	* tree-ssa-loop-niter.h: New file.  Add prototypes.
      	* tree-ssa-loop-prefetch.c (tree_ssa_loop_prefetch,
      	gate_tree_ssa_loop_prefetch, pass_data_loop_prefetch,
      	make_pass_loop_prefetch): Relocate from tree-ssa-loop.c.
      	* tree-ssa-loop-unswitch.c (tree_ssa_loop_unswitch,
      	gate_tree_ssa_loop_unswitch, pass_data_tree_unswitch,
      	make_pass_tree_unswitch): Relocate from tree-ssa-loop.c.
      	* tree-ssa-loop.c (tree_ssa_loop_im, gate_tree_ssa_loop_im,
      	pass_data_lim, make_pass_lim): Move to tree-ssa-loop-im.c.
      	(tree_ssa_loop_unswitch, gate_tree_ssa_loop_unswitch,
      	pass_data_tree_unswitch, make_pass_tree_unswitch): Move.
      	(tree_ssa_loop_ivcanon, gate_tree_ssa_loop_ivcanon, pass_data_iv_canon,
      	make_pass_iv_canon, tree_complete_unroll, gate_tree_complete_unroll,
      	pass_data_complete_unroll, make_pass_complete_unroll,
      	tree_complete_unroll_inner, gate_tree_complete_unroll_inner,
      	pass_data_complete_unrolli, make_pass_complete_unrolli): Move to
      	tree-ssa-loop-ivcanon.c.
      	(tree_ssa_loop_prefetch, gate_tree_ssa_loop_prefetch,
      	pass_data_loop_prefetch, make_pass_loop_prefetch): Move to
      	tree-ssa-loop-prefetch.c.
      	(for_each_index, lsm_tmp_name_add, gen_lsm_tmp_name): Relocate from
      	tree-ssa-loop-im.c.
      	(get_lsm_tmp_name): Relocate and add suffix parameter.
      	(tree_num_loop_insns): Relocate from tree-ssa-ivcanon.c.
      	* tree-scalar-evolution.h (simple_iv): Don't use affive_iv typedef.
      	* cfgloop.c (record_niter_bound, estimated_loop_iterations_int,
      	max_stmt_executions_int): Move from tree-ssa-loop-niter.c.
      	(get_estimated_loop_iterations): Factor out accessor from 
      	estimated_loop_iterations in tree-ssa-loop-niter.c.
      	(get_max_loop_iterations): Factor out accessor from _max_loop_iterations
      	in tree-ssa-niter.c.
      	* loop-unroll.c (decide_unroll_constant_iterations,
      	decide_unroll_runtime_iterations, decide_peel_simple,
      	decide_unroll_stupid): Use new get_* accessors.
      
      From-SVN: r203317
      Andrew MacLeod committed
    • re PR c/20318 (RFE: add attribute to specify that a function never returns NULL) · 826cacfe
      2013-10-09  Marc Glisse  <marc.glisse@inria.fr>
      
      	PR tree-optimization/20318
      gcc/c-family/
      	* c-common.c (handle_returns_nonnull_attribute): New function.
      	(c_common_attribute_table): Add returns_nonnull.
      
      gcc/
      	* doc/extend.texi (returns_nonnull): New function attribute.
      	* fold-const.c (tree_expr_nonzero_warnv_p): Look for returns_nonnull
      	attribute.
      	* tree-vrp.c (gimple_stmt_nonzero_warnv_p): Likewise.
      	(stmt_interesting_for_vrp): Accept all GIMPLE_CALL.
      
      gcc/testsuite/
      	* c-c++-common/pr20318.c: New file.
      	* gcc.dg/tree-ssa/pr20318.c: New file.
      
      From-SVN: r203316
      Marc Glisse committed
    • re PR middle-end/58570 (wrong code for bitfields at -O2 and above) · 378f8976
      	PR middle-end/58570
      	* tree-ssa-alias.c (nonoverlapping_component_refs_of_decl_p): Return
      	false if both components are bitfields.
      
      From-SVN: r203315
      Eric Botcazou committed
    • [AArch64] Implement vclz ADVSimd intrinsic. · 0fe04f5c
      From-SVN: r203314
      Alex Velenko committed
    • [AArch64] Implement vadd_f64 and vsub_f64 ADVSimd intrinsics. · bed9bae4
      From-SVN: r203313
      Alex Velenko committed
    • [AArch64] Implemented vdiv_f64 ADVSimd intrinsic. · 7f3d8b19
      From-SVN: r203312
      Alex Velenko committed
    • [AArch64] vneg ADVSimd intrinsics rewritten in C. · 7df625a6
      From-SVN: r203310
      Alex Velenko committed
    • arm.c (arm_output_mi_thunk): Use plus_constant. · 2b86fca7
      [gcc/]
      2013-10-09  Renlin Li  <Renlin.Li@arm.com>
      
      	* config/arm/arm.c (arm_output_mi_thunk): Use plus_constant.
      
      From-SVN: r203309
      Renlin Li committed
    • s390.c (s390_register_info_stdarg_fpr): Remove packed stack special handling. · e179df83
      2013-10-09  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* config/s390/s390.c (s390_register_info_stdarg_fpr): Remove
      	packed stack special handling.
      	(s390_frame_info, s390_emit_prologue, s390_emit_epilogue): Switch
      	back to fixed stack slots for FPRs saved due to stdarg.
      
      From-SVN: r203305
      Andreas Krebbel committed
    • s390.c (s390_frame_info): Restructure function. · 74129172
      2013-10-09  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* config/s390/s390.c (s390_frame_info): Restructure function.
      
      From-SVN: r203304
      Andreas Krebbel committed
    • s390.c (struct s390_frame_layout): New field gpr_save_slots. · 6455a49e
      2013-10-09  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* config/s390/s390.c (struct s390_frame_layout): New field
      	gpr_save_slots.
      	(cfun_save_arg_fprs_p, cfun_gpr_save_slot): New macros.
      	(s390_reg_clobbered_rtx, s390_regs_ever_clobbered): Change type of
      	regs_ever_clobbered to char*.
      	(s390_regs_ever_clobbered): Check crtl->saves_all_registers
      	instead of cfun->has_nonlocal_label.  Ignore frame related restore
      	INSNs.
      	(s390_register_info): Enable FPR save slots.  Move/Copy some
      	functionality into ...
      	(s390_register_info_gprtofpr, s390_register_info_stdarg_fpr)
      	(s390_register_info_stdarg_gpr, s390_optimize_register_info): New
      	function.
      	(s390_frame_info): Do gpr slot allocation here now.  stdarg does
      	not imply a stack frame.
      	(s390_init_frame_layout): Remove variable clobbered_regs.
      	(s390_update_register_info): Remove function.
      	(s390_hard_regno_rename_ok): Call-saved regs without a save slot
      	cannot be used for register renaming.
      	(s390_hard_regno_scratch_ok): New function.
      	(TARGET_HARD_REGNO_SCRATCH_OK): Define target hook.
      	(s390_initial_elimination_offset): Change offset calculation of
      	the return address pointer.
      	(save_gprs): Deal with only r6 being saved from the call-saved
      	regs.
      	(restore_gprs): Set frame related flag.
      	(s390_save_gprs_to_fprs, s390_restore_gprs_from_fprs): New
      	functions.
      	(s390_emit_prologue): Call s390_register_info instead of
      	s390_update_frame_layout.  Call s390_save_gprs_to_fprs.
      	(s390_emit_epilogue): Call s390_restore_gprs_from_fprs.
      	(s390_optimize_prologue): Call s390_optimize_register_info.
      	Try to remove also FPR slot save/restore INSNs.  Remove frame
      	related flags from restore INSNs.
      
      From-SVN: r203303
      Andreas Krebbel committed
    • rl78-expand.md (movqi): use operands[] not operandN. · 0dc7adad
      * config/rl78/rl78-expand.md (movqi): use operands[] not operandN.
      (movhi): Likewise.
      
      From-SVN: r203300
      DJ Delorie committed
    • rl78.c (rl78_print_operand_1): Change %c to %C to avoid conflict with the MI use of %c. · 59d96342
      * config/rl78/rl78.c (rl78_print_operand_1): Change %c to %C to
      avoid conflict with the MI use of %c.
      * config/rl78/rl78-real.md: change %c to %C throughout.
      * config/rl78/rl78-virt.md: Likewise.
      
      From-SVN: r203299
      DJ Delorie committed
    • Daily bump. · a21a0e9a
      From-SVN: r203298
      GCC Administrator committed
  3. 08 Oct, 2013 2 commits