Intel® C++ Compiler 16.0 User and Reference Guide

Intrinsics that Generate Random Numbers of 16/32/64 Bit Wide Random Integers

RDRAND

There are three intrinsics returning a hardware-generated random value. These intrinsics are declared in the immintrin.h header file.

These intrinsics are mapped to a single RDRAND instruction. The exception is the intrinsic _rdrand64_step(), which is mapped to two 32-bit RDRAND instructions and several shift and conditional jump/move instructions on 32-bit platforms.

RDSEED

There are three intrinsics returning a hardware-generated random value. These intrinsics are declared in the immintrin.h header file.

These intrinsics are mapped to a code-sequence based on the RDSEED instruction. The result code depends on the context in which the intrinsics were used and on the target OS.