diff options
author | Giacomo Travaglini <giacomo.travaglini@arm.com> | 2018-05-01 10:14:35 +0100 |
---|---|---|
committer | Giacomo Travaglini <giacomo.travaglini@arm.com> | 2018-10-09 09:12:28 +0000 |
commit | 52bab3f6eb87bca3b3b79e28f516da9e79445d07 (patch) | |
tree | e3e7b4391355eb7f63fd0da6b9e98df4084e15b6 /src/arch/arm/isa/formats/aarch64.isa | |
parent | b27545be48f7065aa6561e5d46e8316951f5eeee (diff) | |
download | gem5-52bab3f6eb87bca3b3b79e28f516da9e79445d07.tar.xz |
arch-arm: AArch64 Crypto SHA
This patch implements the AArch64 secure hashing instructions
from the Crypto extension.
Change-Id: I2cdfa81b994637c880f2523fe37cdc6596d05cb1
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/13249
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
Diffstat (limited to 'src/arch/arm/isa/formats/aarch64.isa')
-rw-r--r-- | src/arch/arm/isa/formats/aarch64.isa | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/arch/arm/isa/formats/aarch64.isa b/src/arch/arm/isa/formats/aarch64.isa index 77e598c7f..241f9637f 100644 --- a/src/arch/arm/isa/formats/aarch64.isa +++ b/src/arch/arm/isa/formats/aarch64.isa @@ -2111,15 +2111,20 @@ namespace Aarch64 return decodeNeonSc3Diff(machInst); } else if (bits(machInst, 20, 17) == 0x0) { return decodeNeonSc2RegMisc(machInst); + } else if (bits(machInst, 20, 17) == 0x4) { + return decodeCryptoTwoRegSHA(machInst); } else if (bits(machInst, 20, 17) == 0x8) { return decodeNeonScPwise(machInst); } else { return new Unknown64(machInst); } } else if (bits(machInst, 23, 22) == 0 && - bits(machInst, 15) == 0 && - bits(machInst, 10) == 1) { - return decodeNeonScCopy(machInst); + bits(machInst, 15) == 0) { + if (bits(machInst, 10) == 1) { + return decodeNeonScCopy(machInst); + } else { + return decodeCryptoThreeRegSHA(machInst); + } } else { return new Unknown64(machInst); } |