2 ms·
In principle a CPU might use a meta-predictor to decide between the "normal" indirect predictor and the RAS predictor. It can help programs, like in go, that us
by gpderetta 2y ago
In principle a CPU might use a meta-predictor to decide between the "normal" indirect predictor and the RAS predictor. It can help programs, like in go, that use stackful coroutines, as the RAS will be off when context switching deep into a call stack.
I wouldn't be surprised if this is already the case for last few generations of CPUs although I haven't tried to benchmark it.
edit: also good article, TIL that CALL +0 is handled specially.