There's tremendous inertia in apps which is what gave x86 an effective monopoly in the 90'es, even when superior options were available (hello Alpha). Today the situation is actually better and with RISC-V having the same memory model as Arm, porting from an Arm version is way easier (Neon code not withstanding) but it's obviously way less attractive than running running existing code.