Does AES64ESM use floating-point or vector registers?
No. These scalar crypto extension instructions use integer X registers.
AES middle-round encrypt (RV64): two 64-bit source registers represent the full state and apply ShiftRows/SubBytes/MixColumns
AES64ESM uses opcode 0110011 (0x33), funct3 001, funct7 0011011. The rs1 and rs2 fields select the two source registers, and rd selects the destination register.
aes64esm is an RV64 AES encrypt middle-round instruction in Zkne. It uses rs1 and rs2 as two 64-bit source registers representing the full 128-bit AES state, applies ShiftRows, SubBytes, and MixColumns, and writes half of the next-round output to rd. The full 128-bit output is normally produced by executing the official paired instruction with reversed source-register order; round-key XOR is not implicitly performed by this AES64 round instruction.
AES64ESM is a Zkne scalar cryptography instruction for AES middle-round encrypt half-block. This page is checked against the official scalar crypto extension, avoiding confusion among round functions, key schedule steps, and operand sources.
Understand this scenario with real code like «aes64esm a0, a1, a2».
Understand this scenario with real code like «aes64esm a0, a1, a2».
No. These scalar crypto extension instructions use integer X registers.
No. It is a low-level step from AES, SHA, SM3, or SM4; software still combines instructions with the algorithm schedule, round constants, or round keys.