Shl, Shr, Or, And and Xor should all store their result in the first parameter, not in the second.
The manual says the result goes into the first parameter.
The syntax of the instruction set this is based on (x86) suggests they should go into the first parameter.
Consistency with the other instructions (Add, Sub) suggests they should go into the first parameter.
For Shl and Shr it doesn't even make a lot of sense to store the result where the number of bits to shift was before.