and then valve is probably going to succeed, to Microsoft's detriment
Valve is using ARM to run Windows games on "ultra portable" devices, starting with the Steam Frame. At least right now, there isn't a competitive x86 chip that fits this use case. It also feels like more of an experiment, as Valve themselves are setting the expectation that this is a "streaming first" headset for running games on your desktop, and they've even said not to expect a great experience playing Half-Life: Alyx locally (a nearly 7 year old title).
It will be interesting to see if Intel/AMD catch up to ARM on efficiency in time to keep handhelds like the Steam Deck and ROG Ally from jumping ship. Right now it seems Valve is hedging their bets.
I don't think there will ever be a competitive x86 chip. ARM is eating the world piece by piece. The only reason the Steam Deck is running x86 is because it's not performant enough with two translations (Windows to Linux, x86 to ARM). Valve is very wisely starting the switch with a VR headset, a far less popular device than its already niche Steam Deck. The next Steam Deck might already switch to ARM looking at what they announced last week.
x86 is on the way out. Not in two years, perhaps not in ten years. But there will come a time where the economics no longer make sense and no one can afford to develop competitive chips for the server+gamers market alone. Then x86 is truly dead.
We've already seen Intel and AMD narrow the gap considerably, in part by adopting designs pioneered by ARM manufacturers like hybrid big-little cores.
Another aspect that I think gets forgotton in the Steam Deck conversation is the fact that AMD graphics performance is well ahead of Qualcomm, and that is extremely important for a gaming device. I'm willing to bet that the next Steam Deck goes with another custom AMD chip, but the generation after that is more of a question mark.
RISC-V is another wildcard that could end up threatening ARM's path to total dominance.
This is only one of many factors, but I know that high performance instruction decoding doesn't scale nearly as well on x86-64 due to the variable width instructions as it does on ARM. Any reasonable performance OoO core needs to read multilpe instructions ahead in order for the other OoO tricks to work. x86-64 is typically limited to about 5 instructions, and the complexity and power required to do that does not scale linearly since x86-64 instructions can be anywhere from 1 byte to 15 bytes making it very hard to guess where to start reading the second instruction before the first has been decoded. Arm cores have at most 2 widths to deal with and with ARV v8 I think there is only one leading to cores like M1 firestorm that can read 8 instructions ahead in a single cycle. Intel's E cores are able to read 3 instructions at two different addresses (6 total, just not sequential) that can help the core look at predicted branches but doesn't help as much in fast optimized code with fewer branches.
so at the low end of performance where mobile gaming sits you really need an OoO core in order to be able to keep up, but ARM really has a big leg up for that use-case because of the instruction encoding.
Intel Lion-cove decodes 8 instructions per cycle and can retire 12. Intel Skymont's triple decoder can even do 9 instructions per cycle and that's without a cache.
AMD's Zen 5 on the other hand has a 6K cache for instruction decoding allowing for 8 instructions per cycle, but still only a 4-wide decoder for each hyper-thread.
And yet AMD is still ahead of intel in both performance and performance-per-watt. So maybe this whole instruction decode thing is not as important as people are saying.