Intel ARCHITECTURE IA-32 User Manual Page 185

  • Download
  • Add to my manuals
  • Print
  • Page
    / 568
  • Table of contents
  • BOOKMARKS
  • Rated. / 5. Based on customer reviews
Page view 184
Coding for SIMD Architectures 3
3-5
Checking for Streaming SIMD Extensions 2 Support
Checking for support of SSE2 is like checking for SSE support. You
must also check whether your operating system (OS) supports SSE. The
OS requirements for SSE2 Support are the same as the requirements for
SSE.
To check whether your system supports SSE2, follow these steps:
1. Check that your processor has the
cpuid instruction.
2. Check the feature bits of
cpuid for SSE2 technology existence.
3. Check for OS support for SSE.
Example 3-4 shows how to find the SSE2 feature bit (bit 26) in the
cpuid feature flags.
SSE2 requires the same support from the operating system as SSE. To
find out whether the operating system supports SSE2, execute an SSE2
instruction and trap for an exception if one occurs. Catching the
exception in a simple try/except clause (using structured exception
handling in C++) and checking whether the exception code is an invalid
opcode will give you the answer. See Example 3-5.
Example 3-4 Identification of SSE2 with cpuid
…identify existence of cpuid instruction
; identify signature is genuine intel
mov eax, 1 ; request for feature flags
cpuid ; 0Fh, 0A2h cpuid instruction
test EDX, 004000000h ; bit 26 in feature flags equal to 1
jnz Found
Page view 184
1 2 ... 180 181 182 183 184 185 186 187 188 189 190 ... 567 568

Comments to this Manuals

No comments