amd64, i386: use delay_init() instead of writing delay_func by hand
Now that we have delay_init(), use it in all the places where we
currently set delay_func by hand.
lapic_delay() is great: 3000. hv_delay() is needed before we set up
lapic_delay() on Hyper-V guests: 4000. tsc_delay() is better than
lapic_delay() and (probably?) hv_delay(): 5000.
We may bump hv_delay's quality value up over that of tsc_delay() in a
future patch. It's a little ambiguous whether hv_delay() causes a VM
exit.
Idea and patch from jsg@. With tons of input, research and advice
from jsg@.
Link: https://marc.info/?l=openbsd-tech&m=166053729104923&w=2
ok mlarkin@ jsg@