This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gcc and SIMD


Hi,

 1) Seems that all defintions for MMX, SSE and SSE2
are deinred in mmtrin.h,xmmintrin.h and emmintrin.h
header files respectively. Am I right?

2) In those header files all functions call
_builtin_ia32_*. Where those functions(body) are
defined?

3) I thought that associated with each SIMD
instruction defined in Intel-ia-32-architectures
manual(Basic architecture) there is one function
defined in those header files.
But for some instructions no functions were defined in
those header files.(For example MOVDQA instruction)
Also those header files contain some more functions
for which no SIMD assembly instruction exist.Example
in emmintrin.h
static __inline __m128i
_mm_load_si128 (__m128i const *__P)
{
  return (__m128i) __builtin_ia32_loaddqa  ((char
const *)__P);
}
What could be the reason?
Thanks in advance. 


		
___________________________________________________________ 
To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre. http://uk.security.yahoo.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]