Common Intrinsic Functions (Windows CE 5.0)
Microsoft® Windows® CE provides intrinsic function support for many assembler instructions that you can access through inline assembly.
Common intrinsic functions perform simple and useful operations that are difficult to express concisely in C or C++. They are called common because they are supported on most target hardware platforms for Windows CE, although you might need to use in-line assembly language or a run-time library call on the x86 hardware platform.
You can enable these functions by including Cmnintrin.h.
Because the compiler recognizes the intrinsic function, it can replace the code with the appropriate assembler instruction without losing optimizing capability. In contrast, the optimizer typically skips all inline assembly code, often resulting in slower overall code speed.
Using intrinsic functions to access assembly instructions instead of inline assembly results in code that can still be fully optimized by the compiler. All of the intrinsic functions are permanent. Using them in #pragma function generates an error message during compilation.
The compilers offer two categories of intrinsic functions:
Common intrinsic functions
The compiler replaces a common intrinsic function with fully optimized code for all chip set architectures.
Microprocessor-specific intrinsic functions
ARM, Renesas, and MIPS support intrinsic functions unique to their respective microprocessor families, and sometimes support intrinsic functions unique to a particular architecture within a family.
For example, several intrinsic functions are specifically designed to take advantage of the signal processing capabilities of the ARM Digital Signal Processing (DSP) microprocessor.
See Also
About Microprocessor Compilers
Send Feedback on this topic to the authors