I looked into core_esp8266_wiring_shift.c vs wiring_shift.c
To my astonishment I saw no delays in the esp8266 version. As it runs 5 times as fast as a 16 MHz arduino, I wonder if it is ok to assume, that connected hardware can cope with this speed.
Later i noticed, that i2c is around 400 kHz, so it should have been to fast even on a 16 MHz arduino.
What am I am missing?