igb_get_wallclock clears registers

You should explicitly overwrite %ebx and %ecx so the compiler saves them before calling the wallclock function.
Explanation is found here: http://stackoverflow.com/questions/4473452/making-mistake-in-inline-assembler-in-gcc
This was causing us some serious headaches with a counter variable falling back to 0 when calling igb_get_wallclock.