2014-06-13  Yvan Roux  <yvan.roux@linaro.org>

	Backport from trunk r210493, 210494, 210495, 210496, 210497, 210498,
	210499, 210500, 210501, 210502, 210503, 210504, 210505, 210506, 210507,
	210508, 210509, 210510, 210512, 211205, 211206.
	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-protos.h (scale_addr_mode_cost): New.
	(cpu_addrcost_table): Use it.
	* config/aarch64/aarch64.c (generic_addrcost_table): Initialize it.
	(aarch64_address_cost): Rewrite using aarch64_classify_address,
	move it.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64.c (cortexa57_addrcost_table): New.
	(cortexa57_vector_cost): Likewise.
	(cortexa57_tunings): Use them.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64.c (aarch64_rtx_costs_wrapper): New.
	(TARGET_RTX_COSTS): Call it.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>
		    Philipp Tomsich  <philipp.tomsich@theobroma-systems.com>

	* config/aarch64/aarch64.c (aarch64_build_constant): Conditionally
	emit instructions, return number of instructions which would
	be emitted.
	(aarch64_add_constant): Update call to aarch64_build_constant.
	(aarch64_output_mi_thunk): Likewise.
	(aarch64_rtx_costs): Estimate cost of a CONST_INT, cost
	a CONST_DOUBLE.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>
		    Philipp Tomsich  <philipp.tomsich@theobroma-systems.com>

	* config/aarch64/aarch64.c (aarch64_strip_shift_or_extend): Rename
	to...
	(aarch64_strip_extend): ...this, don't strip shifts, check RTX is
	well formed.
	(aarch64_rtx_mult_cost): New.
	(aarch64_rtx_costs): Use it, refactor as appropriate.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64.c (aarch64_rtx_costs): Set default costs.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>
		    Philip Tomsich  <philipp.tomsich@theobroma-systems.com>

	* config/aarch64/aarch64.c (aarch64_rtx_costs): Improve costing
	for SET RTX.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>
		    Philipp Tomsich  <philipp.tomsich@theobroma-systems.com>

	* config/aarch64/aarch64.c (aarch64_rtx_costs): Use address
	costs when costing loads and stores to memory.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>
		    Philipp Tomsich  <philipp.tomsich@theobroma-systems.com>

	* config/aarch64/aarch64.c (aarch64_rtx_costs): Improve cost for
	logical operations.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>
		    Philipp Tomsich  <philipp.tomsich@theobroma-systems.com>

	* config/aarch64/aarch64.c (aarch64_rtx_costs): Cost
	ZERO_EXTEND and SIGN_EXTEND better.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>
		    Philipp Tomsich  <philipp.tomsich@theobroma-systems.com>

	* config/aarch64/aarch64.c (aarch64_rtx_costs): Improve costs for
	rotates and shifts.

	2014-03-16  James Greenhalgh  <james.greenhalgh@arm.com>
		    Philipp Tomsich  <philipp.tomsich@theobroma-systems.com>

	* config/aarch64/aarch64.c (aarch64_rtx_arith_op_extract_p): New.
	(aarch64_rtx_costs): Improve costs for SIGN/ZERO_EXTRACT.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>
		    Philipp Tomsich  <philipp.tomsich@theobroma-systems.com>

	* config/aarch64/aarch64.c (aarch64_rtx_costs): Improve costs for
	DIV/MOD.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>
		    Philipp Tomsich  <philipp.tomsich@theobroma-systems.com>

	* config/aarch64/aarch64.c (aarch64_rtx_costs): Cost comparison
	operators.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>
		    Philipp Tomsich  <philipp.tomsich@theobroma-systems.com>

	* config/aarch64/aarch64.c (aarch64_rtx_costs): Cost FMA,
	FLOAT_EXTEND, FLOAT_TRUNCATE, ABS, SMAX, and SMIN.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>
		    Philipp Tomsich  <philipp.tomsich@theobroma-systems.com>

	* config/aarch64/aarch64.c (aarch64_rtx_costs): Cost TRUNCATE.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64.c (aarch64_rtx_costs): Cost SYMBOL_REF,
	HIGH, LO_SUM.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64.c (aarch64_rtx_costs): Handle the case
	where we were unable to cost an RTX.

	2014-05-16  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64.c (aarch64_rtx_mult_cost): Fix FNMUL case.

	2014-06-03  Andrew Pinski  <apinski@cavium.com>

	* config/aarch64/aarch64.c (aarch64_if_then_else_costs): New function.
	(aarch64_rtx_costs): Use aarch64_if_then_else_costs.

	2014-06-03  Andrew Pinski  <apinski@cavium.com>

	* config/aarch64/aarch64.c (aarch64_if_then_else_costs): Allow non
	comparisons for OP0.



git-svn-id: svn://gcc.gnu.org/svn/gcc/branches/linaro/gcc-4_9-branch@211843 138bc75d-0d04-0410-961f-82ee72b054a4
2014-06-24  Yvan Roux  <yvan.roux@linaro.org>

        Revert:
        2014-05-23  Yvan Roux  <yvan.roux@linaro.org>

        Backport from trunk r209643.
        2014-04-22  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

        * config/aarch64/aarch64.c (TARGET_FLAGS_REGNUM): Define.



git-svn-id: svn://gcc.gnu.org/svn/gcc/branches/linaro/gcc-4_9-branch@211940 138bc75d-0d04-0410-961f-82ee72b054a4
Merge branches/gcc-4_9-branch rev 211964

git-svn-id: svn://gcc.gnu.org/svn/gcc/branches/linaro/gcc-4_9-branch@211979 138bc75d-0d04-0410-961f-82ee72b054a4
Make Linaro GCC 4.9-2014.06-1.

git-svn-id: svn://gcc.gnu.org/svn/gcc/branches/linaro/gcc-4_9-branch@212009 138bc75d-0d04-0410-961f-82ee72b054a4
Bump version number, post release.

git-svn-id: svn://gcc.gnu.org/svn/gcc/branches/linaro/gcc-4_9-branch@212012 138bc75d-0d04-0410-961f-82ee72b054a4
Merge remote-tracking branch 'linaro/linaro-4.9-branch' into linaro-4.9-branch