It seems this patch makes things faster in some cases, and slower in
other. The code for the slower cases is unchanged, so it's a bit strange
it becomes slower. It could have to do with code alignment, etc, so
maybe rearranging the code by trial and error could improve the
situation. But I don't have time to do this. Should I commit now, or
just wait until someone wants to improve it?