[Continuation] Fix GCC 14 builds by adding __attribute__(noipa)
Turns out, 410cd9d1 ("[Continuation] Fix setJmp() by adding 'rax' to clobber list") was not enough for GCC 14 (probably newer ones). This time, the compiler (GCC 14.2.0) also failed to re-load %rax after the setJmp() and also seemed to perform optimizations based on the assumption that setJmp() would *always* return 0. It appears asm("nop" ::: "rax", "rbx", "r12", "r13", "r14", "r15", "memory"); in Continuation::setJmp() is now, after we added the 'noipa' attribute, also no longer necessary. But we keep it for now.
Please register or sign in to comment