Das Problem liegt in der Natur des Designs Code auszuführen wenn "man (die CPU)" denkt das man ihn demnächst brauchen könnte, auch wenn er dann tatsächlich doch nicht gebraucht wird (Im wesentlichen). Schaltet man das ab, sind zwar die gröbsten Probleme weg, aber auch ein eherblicher Teil der "gefühlten" Leistung, weil Code tatsächlich erst dann geladen und verarbeitet wird wenn feststeht das er auch gebraucht wird, und nicht schon spekulativ vorher und dadurch in dem Moment bereit steht wo er gebraucht wird, statt halt jetzt erst berechnet werden zu müssen.
Im Prinzip ist jede CPU anfällig die Code Spekulativ ausführt ohne dabei auf Sicherheitsregeln zu achten. Dies betrifft leider auch bestimmte AMD und sogar bestimmte ARM Prozessoren. Solange die Prozessor Hersteller nicht grundsätzlich etwas am Sicherheitsdesign der CPU ändern, tauscht man nur Pest gegen Kolera.