> > static int in_order_cpu(void) > > { > > /* Processors with CPU id etc */ > > if (x86_match_cpu(cpu_in_order)) > > return 1; > > /* Other rules here */ > > return 0; > > } > > Why does in-order vs out-of-order matter? > > There are leaky SP3 gadgets which satisfy in-order requirements, so long > as the processor is capable of speculating 3 instructions past an > unresolved branch. > > What would (at a guess) save an in-order speculative processor from > being vulnerable is if memory reads are issued and resolve in program > order, but in that case, it is not the in-order property of the > processor which makes it safe.
Fair point - I should rename it cpu_speculates(). The atoms in that list don't speculate. Alan [My Cyrix 6x86 had a different kind of meltdown problem....]