Index: tc-arm.c =================================================================== RCS file: /home/joerg/repo/netbsd/src/external/gpl3/binutils/dist/gas/config/tc-arm.c,v retrieving revision 1.6 diff -u -p -r1.6 tc-arm.c --- tc-arm.c 29 Sep 2013 14:03:30 -0000 1.6 +++ tc-arm.c 19 Nov 2014 23:09:33 -0000 @@ -6936,7 +6936,7 @@ parse_operands (char *str, const unsigne /* Functions for operand encoding. ARM, then Thumb. */ -#define rotate_left(v, n) (v << n | v >> (32 - n)) +#define rotate_left(v, n) (n == 0 ? v : (v << n | v >> (32 - n))) /* If VAL can be encoded in the immediate field of an ARM instruction, return the encoded form. Otherwise, return FAIL. */