4 ms·
That is a reasonable heuristic but your statement is not technically correct. E.g. you need volatile around setjmp/longjmp and that has nothing to do with IO.
by drivebycomment 7y ago
That is a reasonable heuristic but your statement is not technically correct. E.g. you need volatile around setjmp/longjmp and that has nothing to do with IO.
- loeg 7y agoTechnically for sig_atomic_t as well. Both are... messier parts of the C abstract machine.
- rurban 7y agoAnd if your GC doesn't dump the registers. Only with volatile you can keep all locals on the stack. And yes, that's not stupid. It's actually faster than all the register "optimizations" for practical use cases in fast VM's. Register saving across calls and at the GC is much more expensive. mem2reg is an antipattern mostly
- loeg 7y agoGC (of the kind where an external context walks other thread machine stacks) definitely falls under implementation-defined :-).