#include "../bench.h" typedef struct { void * next; } GreatSuspender; void comain( GreatSuspender * this ) { if ( __builtin_expect(this->next != 0, 1) ) goto *(this->next); this->next = &&s1; for () { return; s1: ; } } int main(int argc, char* argv[]) { GreatSuspender s = { 0 }; BENCH( for ( i; n ) { comain( &s ); }, result ) printf("%g\n", result); }