* Thomas Koenig via Gcc: > Intel recommends to have the new registers as caller-saved for > compatibility with current calling conventions. If I understand this > correctly, this is required for exception unwinding, but not if the > function called is __attribute__((nothrow)).
Nothrow functions still can call longjmp, so that's probably not the right discriminator. For glibc on Linux, we have some extra space in jmpbuf in the signal mask (we have 1024 bits, but the kernel can use just 64, some of those have already been repurposed), but it's going to be tough for cancellation support because of a historic microoptimization there. Thanks, Florian