AMMX is a 64 Bit SIMD extension to the 68k CPU. It not only shares the 64 Bit width with the popular MMX implementation, but is also more geared towards the SIMD extensions in RISC architectures (AltiVEC, Wireless MMX).
In the current state of development,
there are 32 registers available for SIMD usage. These 32 registers include the
well-known D0-D7 (extended to 64 Bit) and 24 new registers which are SIMD
exclusive.
This way, a lot of work can be done in registers, reducing the strain caused by memory reads and writes considerably. Reading further, it should become clear that we studied the previously available SIMD architectures but also came up with unique features that separate AMMX from the rest.
AMMX is a new feature added to the 68k architecture. The extended registers need special handling due to the multitasking AmigaOS performs. As of the Gold 2.7 release, the extensions to context switching are part of the VampireSupport kickstart module.
AMMX is a feature that was added to the 68k processor long after AmigaOS3 development stalled. Hence, the extended registers that come with Apollo Core are not saved in the regular AmigaOS stackframe. In order to find a balance between backwards compatibility, context switch overhead and Apollo Core support, it was decided that AMMX aware tasks have to announce themselves to the operating system.