The Oracle Solaris Studio C and C++ compilers support the __ asm statement:
__asm(string);
__asm{ ...block of instructions... }
The string may be a single assembler instruction, or a block of instructions, as in the following examples:
The statement
__asm("lzd ccx %o0");
does something.
The block of instructions
__asm{ ldd ccx %f0 ldd ccy %f1 fadd %f0 %f1 %f0 st ccz %f0 }
The Oracle Solaris Studio C and C++ compilers also support the GCC Extended ASM Statement syntax. See the GCC compiler documentation at gcc.gnu.org for details.