Do the sprites change rotation every frame? Because if not, a far more effective optimization than all this micro-stuff would be to cache the rotated version and just blit it in subsequent uses.