sha1h

SHA1 Hash Update (A64)

SHA1H <Sd>, <Sn>

SHA1 hash update (AArch64 NEON).

Details

SHA1 hash update: rotates the 32-bit scalar value left by 1 bit and writes result to destination. This is a specialized operation used in SHA1 compression to update the working state. Requires Crypto extension. Condition flags are not affected.

Pseudocode Operation

Rd.S ← RotateLeft(Rn.S, 1)

Example

SHA1H s0, s1

Encoding

Binary Layout
01011110
00
10100
00000
10
Rn
Rd
 
Format Crypto
Opcode 0x5E280800
Extension Crypto

Operands

  • Sd
    Destination 32-bit floating-point register
  • Sn
    First source 32-bit floating-point register

Reference (Arm A64 ISA)

Instruction Forms

Encoding Instruction ISA Bit pattern
0x5E280800 SHA1H <Sd>, <Sn> A64 01011110 | 00 | 10100 | 00000 | 10 | Rn | Rd

Description

SHA1 fixed rotate.

Operation

AArch64.CheckFPAdvSIMDEnabled();

bits(32) operand = V[n, 32];    // read element [0] only,  [1-3] zeroed
V[d, 32] = ROL(operand, 30);