hi chris and all,
Am Donnerstag, 30. Januar 2003 20:36 schrieb chris clepper:
It is possible to do a runtime architecture check for Altivec, is it possible for MMX?
yes, you can retrieve those flags. they will tell you what cpu and what extensions, like mmx or 3d-now. look at the startup code from my video stuff. i can also post it here when needed.
there is a "lib" that lets you include mmx as c-functions in your code for gcc, its kust an include file with defines for the opcodes and register types. afaik, that is available for sse as well. guess its called mmxlib or the like, but im not sure for now.
sse is not mmx ! sse contains a lot more functions to apply on much wider registers. compared to sse (or sse2) mmx looks like a nice toy ;) also sse lets you use floating point ops as well in sse registers, whereas mmx doesnt. in fact, you have to instruct the cpu that youre not going to use any more mmx code so it can use floating point now (mmx shares the fp registers). mmx is of course the "common sense" of acceleration on x86 style systems. otoh, if you have a sse(2) cpu, it will do mmx as well.
greets,
chris