I agree that if each core doesn't "support" the full ISA it's a huge pain (the one generation of Intel AVX-512-but-not parts were incredible), but that hasn't been common in years. Usually (and in this case, according to my reading) the small cores get a horrible slow/decoder-emulated implementation of every instruction, so that if you schedule on the "wrong" core you don't trap but just run really slowly instead.
Otherwise, heterogeneous architectures are the present and future of mobile and consumer desktops and have been for years. Desktop OSes are getting better and mobile OSes are just fine at scheduling across different core families (the higher level of abstraction everyone complains about in mobile apps actually helps a lot here).