2013-05-14  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	GCC Linaro 4.8-2013.05 released.

2013-05-14  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r198677.
	2013-05-07  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* config/aarch64/aarch64.md
	(cmp_swp_<optab><ALLX:mode>_shft_<GPI:mode>): Restrict the
	shift value between 0-4.

2013-05-14  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r198574-198575.
	2013-05-03  Vidya Praveen  <vidyapraveen@arm.com>

	* config/aarch64/aarch64-simd.md (simd_fabd): Correct the description.

	2013-05-03  Vidya Praveen  <vidyapraveen@arm.com>

	* config/aarch64/aarch64-simd.md (*fabd_scalar<mode>3): Support
	scalar form of FABD instruction.

2013-05-14  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r198490-198496
	2013-05-01  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/arm_neon.h
	(vac<ge, gt><sd>_f<32, 64>): Rename to...
	(vca<ge, gt><sd>_f<32, 64>): ...this, reimpliment in C.
	(vca<ge, gt, lt, le><q>_f<32, 64>): Reimpliment in C.

	2013-05-01  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-simd.md (*aarch64_fac<optab><mode>): New.
	* config/aarch64/iterators.md (FAC_COMPARISONS): New.

	2013-05-01  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-simd.md
	(vcond<mode>_internal): Handle special cases for constant masks.
	(vcond<mode><mode>): Allow nonmemory_operands for outcome vectors.
	(vcondu<mode><mode>): Likewise.
	(vcond<v_cmp_result><mode>): New.

	2013-05-01  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-builtins.c (BUILTIN_VALLDI): Define.
	(aarch64_fold_builtin): Add folding for cm<eq,ge,gt,tst>.
	* config/aarch64/aarch64-simd-builtins.def
	(cmeq): Update to BUILTIN_VALLDI.
	(cmgt): Likewise.
	(cmge): Likewise.
	(cmle): Likewise.
	(cmlt): Likewise.
	* config/aarch64/arm_neon.h
	(vc<eq, lt, le, gt, ge, tst><z><qsd>_<fpsu><8,16,32,64>): Remap
	to builtins or C as appropriate.

	2013-05-01  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-simd-builtins.def (cmhs): Rename to...
	(cmgeu): ...This.
	(cmhi): Rename to...
	(cmgtu): ...This.
	* config/aarch64/aarch64-simd.md
	(simd_mode): Add SF.
	(aarch64_vcond_internal): Use new names for unsigned comparison insns.
	(aarch64_cm<optab><mode>): Rewrite to not use UNSPECs.
	* config/aarch64/aarch64.md (*cstore<mode>_neg): Rename to...
	(cstore<mode>_neg): ...This.
	* config/aarch64/iterators.md
	(VALLF): new.
	(unspec): Remove UNSPEC_CM<EQ, LE, LT, GE, GT, HS, HI, TST>.
	(COMPARISONS): New.
	(UCOMPARISONS): Likewise.
	(optab): Add missing comparisons.
	(n_optab): New.
	(cmp_1): Likewise.
	(cmp_2): Likewise.
	(CMP): Likewise.
	(cmp): Remove.
	(VCMP_S): Likewise.
	(VCMP_U): Likewise.
	(V_cmp_result): Add DF, SF modes.
	(v_cmp_result): Likewise.
	(v): Likewise.
	(vmtype): Likewise.
	* config/aarch64/predicates.md (aarch64_reg_or_fp_zero): New.

2013-05-14  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r198191.
	2013-04-23  Sofiane Naci  <sofiane.naci@arm.com>

	* config/aarch64/aarch64.md (*mov<mode>_aarch64): Add simd attribute.

2013-05-14  Matthew Gretton-Dann  <matthew.gretton-dann@lianro.org>

	Backport from trunk r197838.
	2013-04-11   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* config/aarch64/aarch64.c (aarch64_select_cc_mode): Allow NEG
	code in CC_NZ mode.
	* config/aarch64/aarch64.md (*neg_<shift><mode>3_compare0): New
	pattern.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r198019.
	2013-04-16   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* config/aarch64/aarch64.md (*adds_mul_imm_<mode>): New pattern.
	(*subs_mul_imm_<mode>): New pattern.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r198424-198425.
	2013-04-29  Ian Bolton  <ian.bolton@arm.com>

	* config/aarch64/aarch64.md (movsi_aarch64): Support LDR/STR
	from/to S register.
	(movdi_aarch64): Support LDR/STR from/to D register.

	2013-04-29  Ian Bolton  <ian.bolton@arm.com>

	* common/config/aarch64/aarch64-common.c: Enable REE pass at O2
	or higher by default.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r198412.
	2013-04-29  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.md (store_minmaxsi): Use only when
	optimize_insn_for_size_p.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk 198394,198396-198400,198402-198404.
	2013-04-29  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/arm_neon.h
	(vcvt<sd>_f<32,64>_s<32,64>): Rewrite in C.
	(vcvt<q>_f<32,64>_s<32,64>): Rewrite using builtins.
	(vcvt_<high_>_f<32,64>_f<32,64>): Likewise.
	(vcvt<qsd>_<su><32,64>_f<32,64>): Likewise.
	(vcvta<qsd>_<su><32,64>_f<32,64>): Likewise.
	(vcvtm<qsd>_<su><32,64>_f<32,64>): Likewise.
	(vcvtn<qsd>_<su><32,64>_f<32,64>): Likewise.
	(vcvtp<qsd>_<su><32,64>_f<32,64>): Likewise.

	2013-04-29  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-simd.md
	(<optab><VDQF:mode><fcvt_target>2): New, maps to fix, fixuns.
	(<fix_trunc_optab><VDQF:mode><fcvt_target>2): New, maps to
	fix_trunc, fixuns_trunc.
	(ftrunc<VDQF:mode>2): New.
	* config/aarch64/iterators.md (optab): Add fix, fixuns.
	(fix_trunc_optab): New.

	2013-04-29  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-builtins.c
	(aarch64_builtin_vectorized_function): Vectorize over ifloorf,
	iceilf, lround, iroundf.

	2013-04-29  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-simd-builtins.def (vec_unpacks_hi_): New.
	(float_truncate_hi_): Likewise.
	(float_extend_lo_): Likewise.
	(float_truncate_lo_): Likewise.
	* config/aarch64/aarch64-simd.md (vec_unpacks_lo_v4sf): New.
	(aarch64_float_extend_lo_v2df): Likewise.
	(vec_unpacks_hi_v4sf): Likewise.
	(aarch64_float_truncate_lo_v2sf): Likewise.
	(aarch64_float_truncate_hi_v4sf): Likewise.
	(vec_pack_trunc_v2df): Likewise.
	(vec_pack_trunc_df): Likewise.

	2013-04-29  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-builtins.c
	(aarch64_fold_builtin): Fold float conversions.
	* config/aarch64/aarch64-simd-builtins.def
	(floatv2si, floatv4si, floatv2di): New.
	(floatunsv2si, floatunsv4si, floatunsv2di): Likewise.
	* config/aarch64/aarch64-simd.md
	(<optab><fcvt_target><VDQF:mode>2): New, expands to float and floatuns.
	* config/aarch64/iterators.md (FLOATUORS): New.
	(optab): Add float, floatuns.
	(su_optab): Likewise.

	2013-04-29  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-builtins.c
	(aarch64_builtin_vectorized_function): Fold to standard pattern names.
	* config/aarch64/aarch64-simd-builtins.def (frintn): New.
	(frintz): Rename to...
	(btrunc): ...this.
	(frintp): Rename to...
	(ceil): ...this.
	(frintm): Rename to...
	(floor): ...this.
	(frinti): Rename to...
	(nearbyint): ...this.
	(frintx): Rename to...
	(rint): ...this.
	(frinta): Rename to...
	(round): ...this.
	* config/aarch64/aarch64-simd.md
	(aarch64_frint<frint_suffix><mode>): Delete.
	(<frint_pattern><mode>2): Convert to insn.
	* config/aarch64/aarch64.md (unspec): Add UNSPEC_FRINTN.
	* config/aarch64/iterators.md (FRINT): Add UNSPEC_FRINTN.
	(frint_pattern): Likewise.
	(frint_suffix): Likewise.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r198302-198306,198316.
	2013-04-25  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-simd.md
	(aarch64_simd_bsl<mode>_internal): Rewrite RTL to not use UNSPEC_BSL.
	(aarch64_simd_bsl<mode>): Likewise.
	* config/aarch64/iterators.md (unspec): Remove UNSPEC_BSL.

	2013-04-25  James Greenhalgh  <jame.greenhalgh@arm.com>

	* config/aarch64/aarch64-simd.md (neg<mode>2): Use VDQ iterator.

	2013-04-25  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-builtins.c
	(aarch64_fold_builtin): New.
	* config/aarch64/aarch64-protos.h (aarch64_fold_builtin): New.
	* config/aarch64/aarch64.c (TARGET_FOLD_BUILTIN): Define.
	* config/aarch64/aarch64-simd-builtins.def (abs): New.
	* config/aarch64/arm_neon.h
	(vabs<q>_<f32, 64>): Implement using __builtin_aarch64_fabs.

	2013-04-25  James Greenhalgh  <james.greenhalgh@arm.com>
	    Tejas Belagod  <tejas.belagod@arm.com>

	* config/aarch64/aarch64-builtins.c
	(aarch64_gimple_fold_builtin): New.
	* config/aarch64/aarch64-protos.h (aarch64_gimple_fold_builtin): New.
	* config/aarch64/aarch64-simd-builtins.def (addv): New.
	* config/aarch64/aarch64-simd.md (addpv4sf): New.
	(addvv4sf): Update.
	* config/aarch64/aarch64.c (TARGET_GIMPLE_FOLD_BUILTIN): Define.

	2013-04-25  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* config/aarch64/aarch64.md 
	(*cmp_swp_<optab><ALLX:mode>_shft_<GPI:mode>): New pattern.

	2013-04-25  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* config/aarch64/aarch64.md (*ngc<mode>): New pattern.
	(*ngcsi_uxtw): New pattern.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk 198298.
	2013-04-25  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
            Julian Brown  <julian@codesourcery.com>

	* config/arm/arm.c (neon_builtin_type_mode): Add T_V4HF.
	(TB_DREG): Add T_V4HF.
	(v4hf_UP): New macro.
	(neon_itype): Add NEON_FLOAT_WIDEN, NEON_FLOAT_NARROW.
	(arm_init_neon_builtins): Handle NEON_FLOAT_WIDEN,
	NEON_FLOAT_NARROW.
	Handle initialisation of V4HF. Adjust initialisation of reinterpret
	built-ins.
	(arm_expand_neon_builtin): Handle NEON_FLOAT_WIDEN,
	NEON_FLOAT_NARROW.
	(arm_vector_mode_supported_p): Handle V4HF.
	(arm_mangle_map): Handle V4HFmode.
	* config/arm/arm.h (VALID_NEON_DREG_MODE): Add V4HF.
	* config/arm/arm_neon_builtins.def: Add entries for
	vcvtv4hfv4sf, vcvtv4sfv4hf.
	* config/arm/neon.md (neon_vcvtv4sfv4hf): New pattern.
	(neon_vcvtv4hfv4sf): Likewise.
	* config/arm/neon-gen.ml: Handle half-precision floating point
	features.
	* config/arm/neon-testgen.ml: Handle Requires_FP_bit feature.
	* config/arm/arm_neon.h: Regenerate.
	* config/arm/neon.ml (type elts): Add F16.
	(type vectype): Add T_float16x4, T_floatHF.
	(type vecmode): Add V4HF.
	(type features): Add Requires_FP_bit feature.
	(elt_width): Handle F16.
	(elt_class): Likewise.
	(elt_of_class_width): Likewise.
	(mode_of_elt): Refactor.
	(type_for_elt): Handle F16, fix error messages.
	(vectype_size): Handle T_float16x4.
	(vcvt_sh): New function.
	(ops): Add entries for vcvt_f16_f32, vcvt_f32_f16.
	(string_of_vectype): Handle T_floatHF, T_float16, T_float16x4.
	(string_of_mode): Handle V4HF.
	* doc/arm-neon-intrinsics.texi: Regenerate.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r198136-198137,198142,198176.
	2013-04-23  Andreas Schwab  <schwab@linux-m68k.org>

	* coretypes.h (gimple_stmt_iterator): Add struct to make
	compatible with C.

	2013-04-22  James Greenhalgh  <james.greenhalgh@arm.com>

	* coretypes.h (gimple_stmt_iterator_d): Forward declare.
	(gimple_stmt_iterator): New typedef.
	* gimple.h (gimple_stmt_iterator): Rename to...
	(gimple_stmt_iterator_d): ... This.
	* doc/tm.texi.in (TARGET_FOLD_BUILTIN): Detail restriction that
	trees be valid for GIMPLE and GENERIC.
	(TARGET_GIMPLE_FOLD_BUILTIN): New.
	* gimple-fold.c (gimple_fold_call): Call target hook
	gimple_fold_builtin.
	* hooks.c (hook_bool_gsiptr_false): New.
	* hooks.h (hook_bool_gsiptr_false): New.
	* target.def (fold_stmt): New.
	* doc/tm.texi: Regenerate.

	2013-04-22  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-builtins.c
	(CF): Remove.
	(CF0, CF1, CF2, CF3, CF4, CF10): New.
	(VAR<1-12>): Add MAP parameter.
	(BUILTIN_*): Likewise.
	* config/aarch64/aarch64-simd-builtins.def: Set MAP parameter.
	* config/aarch64/aarch64-simd.md (aarch64_sshl_n<mode>): Remove.
	(aarch64_ushl_n<mode>): Likewise.
	(aarch64_sshr_n<mode>): Likewise.
	(aarch64_ushr_n<mode>): Likewise.
	(aarch64_<maxmin><mode>): Likewise.
	(aarch64_sqrt<mode>): Likewise.
	* config/aarch64/arm_neon.h (vshl<q>_n_*): Use new builtin names.
	(vshr<q>_n_*): Likewise.

	2013-04-22  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/aarch64/aarch64-builtins.c
	(aarch64_simd_builtin_type_mode): Handle SF types.
	(sf_UP): Define.
	(BUILTIN_GPF): Define.
	(aarch64_init_simd_builtins): Handle SF types.
	* config/aarch64/aarch64-simd-builtins.def (frecpe): Add support.
	(frecps): Likewise.
	(frecpx): Likewise.
	* config/aarch64/aarch64-simd.md
	(simd_types): Update simd_frcp<esx> to simd_frecp<esx>.
	(aarch64_frecpe<mode>): New.
	(aarch64_frecps<mode>): Likewise.
	* config/aarch64/aarch64.md (unspec): Add UNSPEC_FRECP<ESX>.
	(v8type): Add frecp<esx>.
	(aarch64_frecp<FRECP:frecp_suffix><mode>): New.
	(aarch64_frecps<mode>): Likewise.
	* config/aarch64/iterators.md (FRECP): New.
	(frecp_suffix): Likewise.
	* config/aarch64/arm_neon.h
	(vrecp<esx><qsd>_<fd><32, 64>): Convert to using builtins.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r198030.
	2013-04-17  Greta Yorsh  <Greta.Yorsh at arm.com>

	* config/arm/arm.md (movsicc_insn): Convert define_insn into
	define_insn_and_split.
	(and_scc,ior_scc,negscc): Likewise.
	(cmpsi2_addneg, subsi3_compare): Convert to named patterns.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r198020.
	2013-04-16   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* config/aarch64/aarch64.md (*adds_<optab><mode>_multp2):
	New pattern.
	(*subs_<optab><mode>_multp2): New pattern.
	(*adds_<optab><ALLX:mode>_<GPI:mode>): New pattern.
	(*subs_<optab><ALLX:mode>_<GPI:mode>): New pattern.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r198004,198029.
	2013-04-17  Greta Yorsh  <Greta.Yorsh at arm.com>

	* config/arm/arm.c (use_return_insn): Return 0 for targets that
	can benefit from using a sequence of LDRD instructions in epilogue
	instead of a single LDM instruction.

	2013-04-16  Greta Yorsh  <Greta.Yorsh at arm.com>

	* config/arm/arm.c (emit_multi_reg_push): New declaration
	for an existing function.
	(arm_emit_strd_push): New function.
	(arm_expand_prologue): Used here.
	(arm_emit_ldrd_pop): New function.
	(arm_expand_epilogue): Used here.
	(arm_get_frame_offsets): Update condition.
	(arm_emit_multi_reg_pop): Add a special case for load of a single
	register with writeback.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r197965.
	2013-04-15  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.c (const_ok_for_dimode_op): Handle AND case.
	* config/arm/arm.md (*anddi3_insn): Change to insn_and_split.
	* config/arm/constraints.md (De): New constraint.
	* config/arm/neon.md (anddi3_neon): Delete.
	(neon_vand<mode>): Expand to standard anddi3 pattern.
	* config/arm/predicates.md (imm_for_neon_inv_logic_operand):
	Move earlier in the file.
	(neon_inv_logic_op2): Likewise.
	(arm_anddi_operand_neon): New predicate.

2013-05-02  Matthew Gretton-Dann <matthew.gretton-dann@linaro.org>

	Backport from trunk r197925.
	2013-04-12  Greta Yorsh  <Greta.Yorsh@arm.com>

	* config/arm/arm.md (mov_scc,mov_negscc,mov_notscc): Convert
	define_insn into define_insn_and_split and emit movsicc patterns.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r197807.
	2013-04-11   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* config/aarch64/aarch64.h (REVERSIBLE_CC_MODE): Define.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r197642.
	2013-04-09  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.md (minmax_arithsi_non_canon): New pattern.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r197530,197921.
	2013-04-12  Greta Yorsh  <Greta.Yorsh@arm.com>

	* config/arm/arm.c (gen_operands_ldrd_strd): Initialize "base".

	2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

	* config/arm/constraints.md (q): New constraint.
	* config/arm/ldrdstrd.md: New file.
	* config/arm/arm.md (ldrdstrd.md) New include.
	(arm_movdi): Use "q" instead of "r" constraint
	for double-word memory access.
	(movdf_soft_insn): Likewise.
	* config/arm/vfp.md (movdi_vfp): Likewise.
	* config/arm/t-arm (MD_INCLUDES): Add ldrdstrd.md.
        * config/arm/arm-protos.h (gen_operands_ldrd_strd): New declaration.
	* config/arm/arm.c (gen_operands_ldrd_strd): New function.
	(mem_ok_for_ldrd_strd): Likewise.
	(output_move_double): Update assertion.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport of trunk r197518-197522,197526-197528.
	2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

	* config/arm/arm.md (arm_smax_insn): Convert define_insn into
	define_insn_and_split.
	(arm_smin_insn,arm_umaxsi3,arm_uminsi3): Likewise.

	2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

	* config/arm/arm.md (arm_ashldi3_1bit): Convert define_insn into
	define_insn_and_split.
        (arm_ashrdi3_1bit,arm_lshrdi3_1bit): Likewise.
	(shiftsi3_compare): New pattern.
	(rrx): New pattern.
	* config/arm/unspecs.md (UNSPEC_RRX): New.

	2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

	* config/arm/arm.md (negdi_extendsidi): New pattern.
	(negdi_zero_extendsidi): Likewise.

	2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

	* config/arm/arm.md (andsi_iorsi3_notsi): Convert define_insn into
	define_insn_and_split.
	(arm_negdi2,arm_abssi2,arm_neg_abssi2): Likewise.
	(arm_cmpdi_insn,arm_cmpdi_unsigned): Likewise.

	2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

	* config/arm/arm.md (arm_subdi3): Convert define_insn into
	define_insn_and_split.
	(subdi_di_zesidi,subdi_di_sesidi): Likewise.
	(subdi_zesidi_di,subdi_sesidi_di,subdi_zesidi_zesidi): Likewise.

	2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

	* config/arm/arm.md (subsi3_carryin): New pattern.
	(subsi3_carryin_const): Likewise.
	(subsi3_carryin_compare,subsi3_carryin_compare_const): Likewise.
	(subsi3_carryin_shift,rsbsi3_carryin_shift): Likewise.

	2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

	* config/arm/arm.md (incscc,arm_incscc,decscc,arm_decscc): Delete.

	2013-04-05  Greta Yorsh  <Greta.Yorsh@arm.com>

	* config/arm/arm.md (addsi3_carryin_<optab>): Set attribute predicable.
	(addsi3_carryin_alt2_<optab>,addsi3_carryin_shift_<optab>): Likewise.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport of trunk r197517.
	2013-04-05  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.c (arm_expand_builtin): Change fcode
	type to unsigned int.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport of trunk r197513.
	2013-04-05  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

	* doc/invoke.texi (ARM Options): Document cortex-a53 support.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport of trunk r197489-197491.
	2013-04-04  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm-protos.h (arm_builtin_vectorized_function):
	New function prototype.
	* config/arm/arm.c (TARGET_VECTORIZE_BUILTINS): Define.
	(TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION): Likewise.
	(arm_builtin_vectorized_function): New function.

	2013-04-04  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm_neon_builtins.def: New file.
	* config/arm/arm.c (neon_builtin_data): Move contents to
	arm_neon_builtins.def.
	(enum arm_builtins): Include neon builtin definitions.
	(ARM_BUILTIN_NEON_BASE): Move from enum to macro.
	* config/arm/t-arm (arm.o): Add dependency on
	arm_neon_builtins.def.

2013-05-02  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport of trunk 196795-196797,196957
	2013-03-19  Ian Bolton  <ian.bolton@arm.com>

	* config/aarch64/aarch64.md (*sub<mode>3_carryin): New pattern.
	(*subsi3_carryin_uxtw): Likewise.

	2013-03-19  Ian Bolton  <ian.bolton@arm.com>

	* config/aarch64/aarch64.md (*ror<mode>3_insn): New pattern.
	(*rorsi3_insn_uxtw): Likewise.

	2013-03-19  Ian Bolton  <ian.bolton@arm.com>

	* config/aarch64/aarch64.md (*extr<mode>5_insn): New pattern.
	(*extrsi5_insn_uxtw): Likewise.

2013-04-10  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	* LINARO-VERSION: Bump version number.

2013-04-09  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	* GCC Linaro 4.8-2013.04 released.
	
	* LINARO-VERSION: New file.
	* configure.ac: Add Linaro version string.
	* configure: Regenerate.

2013-04-08  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport of trunk r197346.
	2013-04-02  Ian Caulfield  <ian.caulfield@arm.com>
	    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

	* config/arm/arm-arches.def (armv8-a): Default to cortex-a53.
	* config/arm/t-arm (MD_INCLUDES): Depend on cortex-a53.md.
	* config/arm/cortex-a53.md: New file.
	* config/arm/bpabi.h (BE8_LINK_SPEC): Handle cortex-a53.
	* config/arm/arm.md (generic_sched, generic_vfp): Handle cortex-a53.
	* config/arm/arm.c (arm_issue_rate): Likewise.
	* config/arm/arm-tune.md: Regenerate
	* config/arm/arm-tables.opt: Regenerate.
	* config/arm/arm-cores.def: Add cortex-a53.

2013-04-08  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport of trunk r197342.
	2013-04-02  Sofiane Naci  <sofiane.naci@arm.com>

	* config/aarch64/aarch64.md (*mov<mode>_aarch64): Add variants for
	scalar load/store operations using B/H registers.
	(*zero_extend<SHORT:mode><GPI:mode>2_aarch64): Likewise.

2013-04-08  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport of trunk r197341.
	2013-04-02  Sofiane Naci  <sofiane.naci@arm.com>

	* config/aarch64/aarch64.md (*mov<mode>_aarch64): Add alternatives for
	scalar move.
	* config/aarch64/aarch64.c
	(aarch64_simd_scalar_immediate_valid_for_move): New.
	* config/aarch64/aarch64-protos.h
	(aarch64_simd_scalar_immediate_valid_for_move): New.
	* config/aarch64/constraints.md (Dh, Dq): New.
	* config/aarch64/iterators.md (hq): New.

2013-04-08  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r197207.
	2013-03-28   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* config/aarch64/aarch64.md (*and<mode>3_compare0): New pattern.
	(*andsi3_compare0_uxtw): New pattern.
	(*and_<SHIFT:optab><mode>3_compare0): New pattern.
	(*and_<SHIFT:optab>si3_compare0_uxtw): New pattern.

2013-04-08  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r197153.
	2013-03-27  Terry Guo  <terry.guo@arm.com>

	* config/arm/arm-cores.def: Added core cortex-r7.
	* config/arm/arm-tune.md: Regenerated.
	* config/arm/arm-tables.opt: Regenerated.
	* doc/invoke.texi: Added entry for core cortex-r7.

2013-04-08  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r197052.
	2013-03-25  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.md (f_sels, f_seld): New types.
	(*cmov<mode>): New pattern.
	* config/arm/predicates.md (arm_vsel_comparison_operator): New
	predicate.

2013-04-08  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r197046.
	2013-03-25  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.c (arm_emit_load_exclusive): Add acq parameter.
	Emit load-acquire versions when acq is true.
	(arm_emit_store_exclusive): Add rel parameter.
	Emit store-release versions when rel is true.
	(arm_split_compare_and_swap): Use acquire-release instructions
	instead.
	of barriers when appropriate.
	(arm_split_atomic_op): Likewise.
	* config/arm/arm.h (TARGET_HAVE_LDACQ): New macro.
	* config/arm/unspecs.md (VUNSPEC_LAX): New unspec.
	(VUNSPEC_SLX): Likewise.
	(VUNSPEC_LDA): Likewise.
	(VUNSPEC_STL): Likewise.
	* config/arm/sync.md (atomic_load<mode>): New pattern.
	(atomic_store<mode>): Likewise.
	(arm_load_acquire_exclusive<mode>): Likewise.
	(arm_load_acquire_exclusivesi): Likewise.
	(arm_load_acquire_exclusivedi): Likewise.
	(arm_store_release_exclusive<mode>): Likewise.

2013-04-08  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r196876.
	2013-03-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* config/arm/arm-protos.h (tune_params): Add
	prefer_neon_for_64bits field.
	* config/arm/arm.c (prefer_neon_for_64bits): New variable.
	(arm_slowmul_tune): Default prefer_neon_for_64bits to false.
	(arm_fastmul_tune, arm_strongarm_tune, arm_xscale_tune): Ditto.
	(arm_9e_tune, arm_v6t2_tune, arm_cortex_tune): Ditto.
	(arm_cortex_a15_tune, arm_cortex_a5_tune): Ditto.
	(arm_cortex_a9_tune, arm_v6m_tune, arm_fa726te_tune): Ditto.
	(arm_option_override): Handle -mneon-for-64bits new option.
	* config/arm/arm.h (TARGET_PREFER_NEON_64BITS): New macro.
	(prefer_neon_for_64bits): Declare new variable.
	* config/arm/arm.md (arch): Rename neon_onlya8 and neon_nota8 to
	avoid_neon_for_64bits and neon_for_64bits. Remove onlya8 and
	nota8.
	(arch_enabled): Handle new arch types. Remove support for onlya8
	and nota8.
	(one_cmpldi2): Use new arch names.
	* config/arm/arm.opt (mneon-for-64bits): Add option.
	* config/arm/neon.md (adddi3_neon, subdi3_neon, iordi3_neon)
	(anddi3_neon, xordi3_neon, ashldi3_neon, <shift>di3_neon): Use
	neon_for_64bits instead of nota8 and avoid_neon_for_64bits instead
	of onlya8.
	* doc/invoke.texi (-mneon-for-64bits): Document.

2013-04-08  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r196858.
	2013-03-21   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* config/aarch64/aarch64-simd.md (simd_fabd): New Attribute.
	(abd<mode>_3): New pattern.
	(aba<mode>_3): New pattern.
	(fabd<mode>_3): New pattern.

2013-04-08  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>

	Backport from trunk r196856.
	2013-03-21   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* config/aarch64/aarch64-elf.h (REGISTER_PREFIX): Remove.
	* config/aarch64/aarch64.c (aarch64_print_operand): Remove all
	occurrence of REGISTER_PREFIX as its empty string.
