arm: Add support for the dc {civac, cvac, cvau, ivac} instr
authorNikos Nikoleris <nikos.nikoleris@arm.com>
Thu, 12 Jan 2017 17:59:44 +0000 (17:59 +0000)
committerNikos Nikoleris <nikos.nikoleris@arm.com>
Tue, 5 Dec 2017 11:47:01 +0000 (11:47 +0000)
commit0c0ccad52595e837301eebcf8597862d9abb4f9c
tree12192223452b33befcd472d980f23600d1d16c3d
parenteeb36e5b6e81c6b9ea6a0c3c97573e762e58ae05
arm: Add support for the dc {civac, cvac, cvau, ivac} instr

This patch adds support for decoding and executing the following ARMv8
cache maintenance instructions by Virtual Address:
* dc civac: Clean and Invalidate by Virtual Address to the Point
            of Coherency
* dc cvac: Clean by Virtual Address to the Point of Coherency
* dc cvau: Clean by Virtual Address to the Point of Unification
* dc ivac: Invalidate by Virtual Addrsess to the Point of Coherency

Change-Id: I58cabda37f9636105fda1b1e84a0a04965fb5670
Reviewed-by: Sudhanshu Jha <sudhanshu.jha@arm.com>
Reviewed-by: Stephan Diestelhorst <stephan.diestelhorst@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/5060
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
src/arch/arm/insts/mem64.hh
src/arch/arm/isa/formats/aarch64.isa
src/arch/arm/isa/insts/data64.isa
src/arch/arm/isa/templates/mem64.isa