.... post on my reply .....
What I meant to say with compilers & toolchain is, that you're not "locked in" to 1 vendor. What I tried to say is, AVR is not an ARM core which so many vendors now share.
If I decide to roll into Atmel today, I need to install another compiler on my system (not a problem on Linux), but also need my projects to cope with that. That also means programmers, etc. In case of AVR, the odds are not that bad because they have lots of OSS goodness, but for Microchip or 8051 these odds are a lot lower.
You can write all the BSP code you want to hide platform differences, but once you have some intense interaction with a peripheral that's all worthless. After all the power in using microcontrollers is close interaction with the hardware and peripherals, not particularly the ability to abstract everything.
This is not something a Cortex Ax CPU with Linux can capture. E.g. some applications I have had need interrupts processed at 100-500kHz rate, each with a latency and completion of <1us.
I think pricing is different here in Europe/US than in China. From my experience, Atmel has always been really expensive compared to Microchip, and that is now really expensive to some ARM chips if you compare just on performance and peripherals like I said. The LPC800 is about as expensive as an attiny85 at Farnell.
If I talk about a really "low-end" application; I mean read a switch, blink a LED, and be done. Sure use a PIC/AVR/etc. I use them for this sole purpose only. For anything else, I move on from 8-bit.
An IoT device can also be low-end, but outgrow an AVR in terms of memory requirements. There are Cortex m0+ boards from Freescale that have good low-power performance compared to 8-bit chips.
The $2 Allwinner A13 is quite an unfair comparison for "high end" stuff. Yes it's a nice chip for it's power & cost, but it's also obsolete by the manufacturer (unless you buy 10k) after a year because the consumer market moves on. The ARM Cortex chips you compare them with should be available for 10+ years if the manufacturers reputation is anything worth.
Additionally, you need to route DDR2/DDR3 RAM, which only comes in BGA, needs more layers, more engineering time, which is not exactly cheap.
And on top of that: what about power? Those Cortex Mx's consume like 100mW ; how much MHz can you get from a A13 in say 500mW coupled with FLASH + DDR3 memory/termination?
Can't comment on MSP430, but for what I know it's all very similar. They are both 16-bit. Starter chips both run in the 10-30MIPS. Starter chips both are <2K RAM range. And MSP430 may have some nicer analog peripherals. I just happen to pick PIC24 because that's what I work with.
Don't get me wrong - I love linux. I use it as my daily driver. But linux is a very complex system to debug. Sure there are very powerful tools available, but what is the equivalent of a "blinky" on a SoC? Successful kernel boot + all peripherals configured + memtest OK? Although once you've reached that stage you got a lot more power available on Linux than bare-metal, it's also a lot more intensive process to first set up than anything else.