diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a53a2e0e0e36979124555b5b3da8159efd7f2c31..b130e14f921d81e4f80f4b3bb35b03c1af7e592d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2009-05-16  Richard Earnshaw  <rearnsha@arm.com>
+
+	PR target/40153
+	* arm.md (cstoresi_nltu_thumb1): Use a neg of ltu as the pattern name
+	implies.
+
 2009-05-16  Richard Earnshaw  <rearnsha@arm.com>
 
 	* arm.md (movdi2): Copy non-reg values to DImode registers.
diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md
index 056194090fa66c48efe0e00d7b485997e747891c..2b2d703da2fa20c06c1e2340da2045590376ef9c 100644
--- a/gcc/config/arm/arm.md
+++ b/gcc/config/arm/arm.md
@@ -7977,7 +7977,7 @@
 
 (define_insn "cstoresi_nltu_thumb1"
   [(set (match_operand:SI 0 "s_register_operand" "=l,l")
-        (neg:SI (gtu:SI (match_operand:SI 1 "s_register_operand" "l,*h")
+        (neg:SI (ltu:SI (match_operand:SI 1 "s_register_operand" "l,*h")
 			(match_operand:SI 2 "thumb1_cmp_operand" "lI*h,*r"))))]
   "TARGET_THUMB1"
   "cmp\\t%1, %2\;sbc\\t%0, %0, %0"