Source: cirosantilli/_file/c/inc_loop_asm.c
= c/inc_loop_asm.c
{file}
{tag=CPU microbenchmark}
This is the only way that we've managed to reliably get a single `inc` instruction loop, by using <inline assembly>, e.g. on we do <x86>:
``
loop:
inc %[i];
cmp %[max], %[i];
jb loop;
``
For 1s on <Ciro Santilli's hardware/P14s> <Ubuntu 25.04> GCC 14.2 -O0 x86_64 we need about 5 billion:
``
time ./inc_loop_asm.out 5000000000
``