Both the Vector/SIMD Multimedia Extension and SPU instruction sets have extensions that support C-language intrinsics. Intrinsics are C-language commands, in the form of function calls, that are convenient substitutes for one or more inline assembly-language instructions.
In a specific instruction set, most intrinsic names use a standard prefix in their mnemonic, and some intrinsic names incorporate the mnemonic of an associated assembly-language instruction. For example, the Vector/SIMD Multimedia Extension intrinsic that implements the add Vector/SIMD Multimedia Extension assembly-language instruction is named vec_add, and the SPU intrinsic that implements the stop SPU assembly-language instruction is named spu_stop.
Types of Intrinsic | Definition | PPE | SPE |
---|---|---|---|
Specific | One-to-one mapping to a single assembly-language instruction. | X | X |
Generic | Map to one or more assembly-language instructions, depending on types of input parameters. | X | X |
Composite | Constructed from a sequence of Specific or Generic intrinsics. | X | |
Predicates | Evaluate SIMD conditionals. | X |
For more information about the PPE intrinsics, see C/C++ language extensions (intrinsics).
For more information about the SPE intrinsics, see SPU C/C++ language extensions (intrinsics).