The stm8 port currently (rev #8802) generates code for shifts like this: Copy source into destination, shift in destination.
Sometimes, however it would be cheaper to do the shift in a dead source register instead, or in another free register. Ideally this choice would be made for individual bytes.
Philipp
Implemented in revision #9000.
Philipp