sha256h2
SHA256 Hash Part 2
SHA256H2 <Qd>, <Qn>, <Vm>.<T>
SHA256 hash update (part 2).
Details
Performs the second part of one round of SHA-256 hash computation. The instruction updates the upper 96 bits of the SHA-256 state in Qd using the partial state in Qn and 128-bit message schedule data from Vm. This is an AArch64-only instruction requiring the Crypto extension. No condition flags are affected.
Pseudocode Operation
Qd ← SHA256_H2(Qd, Qn, Vm)
Example
SHA256H2 q0, q1, v2.4s.T
Encoding
Binary Layout
01011110
00
0
Rm
010
1
00
Rn
Rd
Operands
-
Qd
State -
Qn
Hash -
Vm
Data
Reference (Arm A64 ISA)
Instruction Forms
| Encoding | Instruction | ISA | Bit pattern | ||
|---|---|---|---|---|---|
| 0x5E005000 | SHA256H2 <Qd>, <Qn>, <Vm>.4S | A64 | 01011110 | 00 | 0 | Rm | 010 | 1 | 00 | Rn | Rd |
Description
SHA256 hash update (part 2).
Operation
AArch64.CheckFPAdvSIMDEnabled(); bits(128) result; result = SHA256hash(V[n, 128], V[d, 128], V[m, 128], FALSE); V[d, 128] = result;