diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ece9c7b89c3fe66671f589253d00b05ce7454df3..ca8f544901e927758bafe4932c7b5d5cfee5d0d3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2004-08-17  Daniel Bornstein  <danfuzz@milk.com>
+
+	PR target/17019
+	* arm.md (addsi3_cbranch_scratch): Correct case labels.
+
 2004-08-17  Paolo Bonzini  <bonzini@gnu.org>
 
 	PR middle-end/17036
diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md
index f19f8cd4ebebb3e06bec9e845e6158747e2bdaa7..26ac27899e2d61c18f604b69c7f9ae3de8bf9ce9 100644
--- a/gcc/config/arm/arm.md
+++ b/gcc/config/arm/arm.md
@@ -6442,10 +6442,10 @@
        case 1:
 	 output_asm_insn (\"cmn\t%1, %2\", operands);
 	 break;
-       case 3:
+       case 2:
 	 output_asm_insn (\"add\t%0, %1, %2\", operands);
 	 break;
-       case 4:
+       case 3:
 	 output_asm_insn (\"add\t%0, %0, %2\", operands);
 	 break;
        }