2010-09-13  Chung-Lin Tang  <cltang@codesourcery.com>

	Backport from mainline:

	2010-09-12  Bernd Schmidt  <bernds@codesourcery.com>

	gcc/
	* config/arm/arm.md (arm_ashldi3_1bit, arm_ashrdi3_1bit,
	arm_lshrdi3_1bit): Put earlyclobber on the right alternative.

 2010-09-10  Nathan Froyd  <froydnj@codesourcery.com>
 
 	Issue #9120

=== modified file 'gcc/config/arm/arm.md'
--- old/gcc/config/arm/arm.md	2010-09-13 15:39:11 +0000
+++ new/gcc/config/arm/arm.md	2010-09-15 16:55:55 +0000
@@ -3295,7 +3295,7 @@
 )
 
 (define_insn "arm_ashldi3_1bit"
-  [(set (match_operand:DI            0 "s_register_operand" "=&r,r")
+  [(set (match_operand:DI            0 "s_register_operand" "=r,&r")
         (ashift:DI (match_operand:DI 1 "s_register_operand" "0,r")
                    (const_int 1)))
    (clobber (reg:CC CC_REGNUM))]
@@ -3354,7 +3354,7 @@
 )
 
 (define_insn "arm_ashrdi3_1bit"
-  [(set (match_operand:DI              0 "s_register_operand" "=&r,r")
+  [(set (match_operand:DI              0 "s_register_operand" "=r,&r")
         (ashiftrt:DI (match_operand:DI 1 "s_register_operand" "0,r")
                      (const_int 1)))
    (clobber (reg:CC CC_REGNUM))]
@@ -3410,7 +3410,7 @@
 )
 
 (define_insn "arm_lshrdi3_1bit"
-  [(set (match_operand:DI              0 "s_register_operand" "=&r,r")
+  [(set (match_operand:DI              0 "s_register_operand" "=r,&r")
         (lshiftrt:DI (match_operand:DI 1 "s_register_operand" "0,r")
                      (const_int 1)))
    (clobber (reg:CC CC_REGNUM))]

