//TODO: In explicitly threaded version, we can use an atomic (atomic.h) 64-bit integer `store()` to output those 8 bytes in `out`, which will be re-cast as `uint64_t out[restrict 1]`
//TODO: In explicitly threaded version, we can use an atomic (atomic.h) 64-bit integer `store()` to output those 8 bytes in `out`, which will be re-cast as `uint64_t out[restrict 1]`
}
}
// Light assertion (likely to succeed)
staticnoinlinenoreturnvoiddie(constchar*msg)
staticinlineintlcheck(intval,constchar*msg)
{
{
LIF(val)returnval;
fprintf(stderr,"error: %s\n",msg);
fprintf(stderr,"error: %s\n",msg);
exit(1);
exit(1);
}
}
// Light assertion (likely to succeed)
//TODO: Where do we have the __builtin_expect here? On the inside or the outside of the expression? Or both? For now, both.