Available on x86 or x86-64 only.
Functions§
- _mm_
sha1msg1_ ⚠epu32 sha
- Performs an intermediate calculation for the next four SHA1 message values
(unsigned 32-bit integers) using previous message values from
a
andb
, and returning the result. - _mm_
sha1msg2_ ⚠epu32 sha
- Performs the final calculation for the next four SHA1 message values
(unsigned 32-bit integers) using the intermediate result in
a
and the previous message values inb
, and returns the result. - _mm_
sha1nexte_ ⚠epu32 sha
- Calculate SHA1 state variable E after four rounds of operation from the
current SHA1 state variable
a
, add that value to the scheduled values (unsigned 32-bit integers) inb
, and returns the result. - _mm_
sha1rnds4_ ⚠epu32 sha
- Performs four rounds of SHA1 operation using an initial SHA1 state (A,B,C,D)
from
a
and some pre-computed sum of the next 4 round message values (unsigned 32-bit integers), and state variable E fromb
, and return the updated SHA1 state (A,B,C,D).FUNC
contains the logic functions and round constants. - _mm_
sha256msg1_ ⚠epu32 sha
- Performs an intermediate calculation for the next four SHA256 message values
(unsigned 32-bit integers) using previous message values from
a
andb
, and return the result. - _mm_
sha256msg2_ ⚠epu32 sha
- Performs the final calculation for the next four SHA256 message values
(unsigned 32-bit integers) using previous message values from
a
andb
, and return the result. - _mm_
sha256rnds2_ ⚠epu32 sha
- Performs 2 rounds of SHA256 operation using an initial SHA256 state
(C,D,G,H) from
a
, an initial SHA256 state (A,B,E,F) fromb
, and a pre-computed sum of the next 2 round message values (unsigned 32-bit integers) and the corresponding round constants fromk
, and store the updated SHA256 state (A,B,E,F) in dst. - sha1msg1 🔒 ⚠
- sha1msg2 🔒 ⚠
- sha1nexte 🔒 ⚠
- sha1rnds4 🔒 ⚠
- sha256msg1 🔒 ⚠
- sha256msg2 🔒 ⚠
- sha256rnds2 🔒 ⚠
- vsha512msg1 🔒 ⚠
- vsha512msg2 🔒 ⚠
- vsha512rnds2 🔒 ⚠
- vsm3msg1 🔒 ⚠
- vsm3msg2 🔒 ⚠
- vsm3rnds2 🔒 ⚠
- vsm4key4128 🔒 ⚠
- vsm4key4256 🔒 ⚠
- vsm4rnds4128 🔒 ⚠
- vsm4rnds4256 🔒 ⚠
- _mm256_
sha512msg1_ ⚠epi64 Experimental sha512,avx
- This intrinsic is one of the two SHA512 message scheduling instructions. The intrinsic performs an intermediate calculation for the next four SHA512 message qwords. The calculated results are stored in dst.
- _mm256_
sha512msg2_ ⚠epi64 Experimental sha512,avx
- This intrinsic is one of the two SHA512 message scheduling instructions. The intrinsic performs the final calculation for the next four SHA512 message qwords. The calculated results are stored in dst.
- _mm256_
sha512rnds2_ ⚠epi64 Experimental sha512,avx
- This intrinsic performs two rounds of SHA512 operation using initial SHA512 state
(C,D,G,H)
froma
, an initial SHA512 state(A,B,E,F)
fromb
, and a pre-computed sum of the next two round message qwords and the corresponding round constants fromc
(only the two lower qwords of the third operand). The updated SHA512 state(A,B,E,F)
is written to dst, and dst can be used as the updated state(C,D,G,H)
in later rounds. - _mm256_
sm4key4_ ⚠epi32 Experimental sm4,avx
- This intrinsic performs four rounds of SM4 key expansion. The intrinsic operates on independent 128-bit lanes. The calculated results are stored in dst.
- _mm256_
sm4rnds4_ ⚠epi32 Experimental sm4,avx
- This intrinsic performs four rounds of SM4 encryption. The intrinsic operates on independent 128-bit lanes. The calculated results are stored in dst.
- _mm_
sm3msg1_ ⚠epi32 Experimental sm3,avx
- This is one of the two SM3 message scheduling intrinsics. The intrinsic performs an initial calculation for the next four SM3 message words. The calculated results are stored in dst.
- _mm_
sm3msg2_ ⚠epi32 Experimental sm3,avx
- This is one of the two SM3 message scheduling intrinsics. The intrinsic performs the final calculation for the next four SM3 message words. The calculated results are stored in dst.
- _mm_
sm3rnds2_ ⚠epi32 Experimental sm3,avx
- The intrinsic performs two rounds of SM3 operation using initial SM3 state
(C, D, G, H)
froma
, an initial SM3 states(A, B, E, F)
fromb
and a pre-computed words from thec
.a
with initial SM3 state of(C, D, G, H)
assumes input of non-rotated left variables from previous state. The updated SM3 state(A, B, E, F)
is written toa
. Theimm8
should contain the even round number for the first of the two rounds computed by this instruction. The computation masks theimm8
value by ANDing it with0x3E
so that only even round numbers from 0 through 62 are used for this operation. The calculated results are stored in dst. - _mm_
sm4key4_ ⚠epi32 Experimental sm4,avx
- This intrinsic performs four rounds of SM4 key expansion. The intrinsic operates on independent 128-bit lanes. The calculated results are stored in dst.
- _mm_
sm4rnds4_ ⚠epi32 Experimental sm4,avx
- This intrinsic performs four rounds of SM4 encryption. The intrinsic operates on independent 128-bit lanes. The calculated results are stored in dst.