arm: Add support for armv8 CRC32 instructions
authorGiacomo Travaglini <giacomo.travaglini@arm.com>
Fri, 13 Oct 2017 09:03:14 +0000 (10:03 +0100)
committerAndreas Sandberg <andreas.sandberg@arm.com>
Wed, 15 Nov 2017 14:11:44 +0000 (14:11 +0000)
commitef0490081fa7ebcda2e1c7adccb05b3a14014cf1
tree8073449559fecaf9bc1fb8f280a50a30a9313863
parentf0f04ddd70aa3260f5282227de264653ac36fabe
arm: Add support for armv8 CRC32 instructions

This patch introduces the ARM A32/T32/A64 CRC Instructions, which are
mandatory since ARMv8.1. The UNPREDICTABLE behaviours are implemented as
follows:
1) CRC32(C)X (64 bit) instructions are decoded as Undefined in Aarch32
2) The instructions support predication in Aarch32
3) Using R15(PC) as source/dest operand is permitted in Aarch32

Change-Id: Iaf29b05874e1370c7615da79a07f111ded17b6cc
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
Reviewed-by: Giacomo Gabrielli <giacomo.gabrielli@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/5521
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
src/arch/arm/isa/decoder/arm.isa
src/arch/arm/isa/formats/aarch64.isa
src/arch/arm/isa/formats/data.isa
src/arch/arm/isa/formats/misc.isa
src/arch/arm/isa/includes.isa
src/arch/arm/isa/insts/data64.isa
src/arch/arm/isa/insts/misc.isa
src/base/crc.hh [new file with mode: 0644]