As I understand it the 68K was running into difficulties when it was getting to things like the 68060. That was one of the reasons they abandoned it.
B.S. This was just anti-marketing the 68060 because Motorola decided they were going the PPC route. The 68060 was outperforming the early PPC processors. Apple made their OS incompatible with the 68060 so it wouldn't be the fastest Macintosh available. In the meantime, Intel was having no problems upping the performance of their x86 line which is more difficult to enhance than the 68k family.
Having a complex and powerful ISA might be wonderful from the programmer point of view but it's most likely the opposite from the hardware designer's point of view. Someone has to implement all those commands in hardware and this can lead to some very tricky situations.
Many times you are correct but the 68kF was created with performance considerations like:
1) Address registers only allow full 32 bit register updates.
4) Most new instructions update full 32 bit register.
2) SELcc and SBcc were added instead of MOVcc.
3) Smaller 32 bit immediates are compressed (using sign extend instead of shift).
4) Bitfield instructions are retained as they can be fast and update the whole register.
5) Trashing registers is avoided where possible in many different ways.
6) Better orthogonality, address registers allowed more, less register shuffling needed.
7) Many new instructions have a stealth 3 op format without requiring more
units.
It is helpful to know a little bit about how a processor works before creating an ISA
.
e.g. What happens if your processor is doing some complex operation and an interrupt comes in? Do you hold the interrupt and keep going? What if the operation takes a long time involves reading from RAM? You probably can't wait that long so you have to find a way of halting the processor, storing the state mid instruction, handling the interrupt, recovering the state and restarting where you left off.
It's more complex but it's already handled well in the 68060. The 68040 was kind of a mess though. There are more complex problems addressed all the time in modern processors than this. Take branch hazards for instance.
Thats the sort of problem the hardware designers have to deal with. Then you have to build it and test it, including that particular behaviour. There's a reason no one but IBM and Intel use CISC these days - and they both tried to get rid of it.
Freescale with the ColdFire?