From 37f2edf5c6fbff84b0d2a4d11347c1cbd47bc2f7 Mon Sep 17 00:00:00 2001 From: Richard Earnshaw Date: Thu, 22 May 2014 15:38:51 +0000 Subject: [PATCH] re PR target/61208 (armhf: generated asm code produces "branch out of range" error in gas with -Os) PR target/61208 * arm.md (arm_cmpdi_unsigned): Fix length calculation for Thumb2. From-SVN: r210812 --- gcc/ChangeLog | 5 +++++ gcc/config/arm/arm.md | 10 +++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3d6a4a4d1e7..f09c3b7b40f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2014-05-22 Richard Earnshaw + + PR target/61208 + * arm.md (arm_cmpdi_unsigned): Fix length calculation for Thumb2. + 2014-05-22 Nick Clifton * config/msp430/msp430.h (ASM_SPEC): Add spaces after inserted diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md index 22025949aa8..348a89c7b0a 100644 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -8371,8 +8371,8 @@ (define_insn_and_split "*arm_cmpdi_unsigned" [(set (reg:CC_CZ CC_REGNUM) - (compare:CC_CZ (match_operand:DI 0 "s_register_operand" "l,r,r") - (match_operand:DI 1 "arm_di_operand" "Py,r,rDi")))] + (compare:CC_CZ (match_operand:DI 0 "s_register_operand" "l,r,r,r") + (match_operand:DI 1 "arm_di_operand" "Py,r,Di,rDi")))] "TARGET_32BIT" "#" ; "cmp\\t%R0, %R1\;it eq\;cmpeq\\t%Q0, %Q1" @@ -8392,9 +8392,9 @@ operands[1] = gen_lowpart (SImode, operands[1]); } [(set_attr "conds" "set") - (set_attr "enabled_for_depr_it" "yes,yes,no") - (set_attr "arch" "t2,t2,*") - (set_attr "length" "6,6,8") + (set_attr "enabled_for_depr_it" "yes,yes,no,*") + (set_attr "arch" "t2,t2,t2,a") + (set_attr "length" "6,6,10,8") (set_attr "type" "multiple")] )