MOVS <Rd>, <Rm>, ROR <Rs> misbehaves.
If Rs[7:0] equals zero, C flag should be left unchanged. But indeed, C flag is always touched, after executing the instruction.
After executing the following code:
@ <Rm>, ROR <Rs>
MOVS R3, #0xF000000F
MOVS R4, #0x100
MOVS R1, R3, ROR R4
C flag should be 0, but it is set to 1.