diff options
author | Bernd Schmidt <bernds@codesourcery.com> | 2010-07-09 21:51:16 +0000 |
---|---|---|
committer | Bernd Schmidt <bernds@gcc.gnu.org> | 2010-07-09 21:51:16 +0000 |
commit | 95da5cf9177a915c6c015468b822e402293dcf5e (patch) | |
tree | a968aff64cd638fca7f0f27ac8fb4ddef4f190a9 /gcc | |
parent | 1744c80034795a44ca69e795c30ddb36e8b22cbe (diff) | |
download | gcc-95da5cf9177a915c6c015468b822e402293dcf5e.zip gcc-95da5cf9177a915c6c015468b822e402293dcf5e.tar.gz gcc-95da5cf9177a915c6c015468b822e402293dcf5e.tar.bz2 |
arm.md (cbranchqi4): Fix array size.
* config/arm/arm.md (cbranchqi4): Fix array size.
(addsi3_cbranch): Also andle alternative 2 like alternative 3 when
calculating length.
From-SVN: r162022
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/arm/arm.md | 8 |
2 files changed, 8 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 692c15d..3aed4b5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -13,6 +13,10 @@ * config/arm/arm.md (Thumb-1 ldrsb peephole): New. + * config/arm/arm.md (cbranchqi4): Fix array size. + (addsi3_cbranch): Also andle alternative 2 like alternative 3 when + calculating length. + 2010-07-09 Richard Guenther <rguenther@suse.de> * gimple.c (struct type_fixup_s): New struct and VEC type. diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md index 3461d3e..e597eb3a 100644 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -6562,7 +6562,7 @@ (pc)))] "TARGET_THUMB1" { - rtx xops[3]; + rtx xops[4]; xops[1] = gen_reg_rtx (SImode); emit_insn (gen_zero_extendqisi2 (xops[1], operands[1])); xops[2] = GEN_INT (127); @@ -7509,7 +7509,7 @@ else if (which_alternative >= 4) output_asm_insn (\"str\\t%1, %0\", operands); - switch (get_attr_length (insn) - ((which_alternative >= 3) ? 2 : 0)) + switch (get_attr_length (insn) - ((which_alternative >= 2) ? 2 : 0)) { case 4: return \"b%d4\\t%l5\"; @@ -7523,7 +7523,7 @@ [(set (attr "far_jump") (if_then_else (ior (and (lt (symbol_ref ("which_alternative")) - (const_int 3)) + (const_int 2)) (eq_attr "length" "8")) (eq_attr "length" "10")) (const_string "yes") @@ -7531,7 +7531,7 @@ (set (attr "length") (if_then_else (lt (symbol_ref ("which_alternative")) - (const_int 3)) + (const_int 2)) (if_then_else (and (ge (minus (match_dup 5) (pc)) (const_int -250)) (le (minus (match_dup 5) (pc)) (const_int 256))) |