2014-05-25  Paolo Carlini  <paolo.carlini@oracle.com>

	* Fix typo in ChangeLog entry.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211003 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	PR libgcc/61152
	* config/dbx.h (License): Add Runtime Library Exception.
	* config/newlib-stdint.h (License): Same.
	* config/rtems.h (License): Same
	* config/initfini-array.h (License): Same
	* config/v850/v850.h (License): Same.
	* config/v850/v850-opts.h (License): Same
	* config/v850/rtems.h (License): Same.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211004 138bc75d-0d04-0410-961f-82ee72b054a4
-fuse-caller-save - Collect register usage information

2014-05-28  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

	* cgraph.h (struct cgraph_rtl_info): Add function_used_regs
	and function_used_regs_valid fields.
	* final.c: Move include of hard-reg-set.h to before rtl.h to declare
	find_all_hard_reg_sets.
	(collect_fn_hard_reg_usage, get_call_fndecl, get_call_cgraph_rtl_info)
	(get_call_reg_set_usage): New function.
	(rest_of_handle_final): Use collect_fn_hard_reg_usage.
	* regs.h (get_call_reg_set_usage): Declare.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211006 138bc75d-0d04-0410-961f-82ee72b054a4
-fuse-caller-save - Use collected register usage information

2014-05-28  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

	* df-scan.c (df_get_call_refs): Use get_call_reg_set_usage.
	* caller-save.c (setup_save_areas, save_call_clobbered_regs): Use
	get_call_reg_set_usage.
	* resource.c (mark_set_resources, mark_target_live_regs): Use
	get_call_reg_set_usage.
	* ira-int.h (struct ira_allocno): Add crossed_calls_clobbered_regs
	field.
	(ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS): Define.
	* ira-lives.c (process_bb_node_lives): Use get_call_reg_set_usage.
	Calculate ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS.
	* ira-build.c (ira_create_allocno): Init
	ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS.
	(create_cap_allocno, propagate_allocno_info)
	(propagate_some_info_from_allocno)
	(copy_info_to_removed_store_destinations): Handle
	ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS.
	* ira-costs.c (ira_tune_allocno_costs): Use
	ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS to adjust costs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211007 138bc75d-0d04-0410-961f-82ee72b054a4
-fuse-caller-save - Enable by default at O2 and higher

2014-05-28  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

	* opts.c (default_options_table): Add OPT_LEVELS_2_PLUS entry with
	OPT_fuse_caller_save.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211008 138bc75d-0d04-0410-961f-82ee72b054a4
-fuse-caller-save - Add documentation

2014-05-28  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

	* doc/invoke.texi (@item Optimization Options): Add -fuse-caller-save to
	gccoptlist.
	(@item -fuse-caller-save): New item.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211009 138bc75d-0d04-0410-961f-82ee72b054a4
-fuse-caller-save - Support in lra

2014-05-28  Tom de Vries  <tom@codesourcery.com>

	* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
	* lra.c (initialize_lra_reg_info_element): Add init of
	actual_call_used_reg_set field.
	(lra): Call lra_create_live_ranges before lra_inheritance for
	-fuse-caller-save.
	* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
	-fuse-caller-save.
	* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
	instead of call_used_reg_set for -fuse-caller-save.
	* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211010 138bc75d-0d04-0410-961f-82ee72b054a4