Visible to Intel only — GUID: eoe1487902627474
Ixiasoft
Visible to Intel only — GUID: eoe1487902627474
Ixiasoft
3.11. 845819: Instruction Sequences Containing AES Instructions May Produce Incorrect Results
Description
When the Cortex-A53 MPCore* processor is executing in the AArch64 state, certain sequences of instructions that include AES instructions may cause incorrect results.
There are two code sequences that can cause this erratum in the AArch64 execution state:
- Code sequence 1:
- The CPU executes an AESE instruction.
- The CPU executes a USQADD instruction.
- Both the Vn and Vd of this instruction must be the same register as Vd for the AES instruction.
- The size field for this instruction must be '00', indicating byte-sized elements.
- The USQADD instruction can be in either vector or scalar form.
- Code sequence 2:
- The CPU executes a SUQADD instruction.
- The size field for this instruction must be 00, indicating byte-sized elements.
- The SUQADD instruction can be in either vector or scalar form.
- The CPU executes an AESMC or AESIMC instruction.
- Both the Vn and Vd of this instruction must be the same register as the Vd for the SUQADD instruction.
- The CPU executes a SUQADD instruction.
Impact
The sequences of instructions described in the conditions above are not expected to occur in real code because they do not perform useful computation. Therefore, there is no impact expected to real systems.
Workaround
Because the code sequences for this erratum are not expected to occur in real code, no workaround is required.