kvm, arm: Fix incorrect PSTATE sync
authorAndreas Sandberg <andreas.sandberg@arm.com>
Fri, 28 Apr 2017 11:08:32 +0000 (11:08 +0000)
committerAndreas Sandberg <andreas.sandberg@arm.com>
Tue, 9 May 2017 09:24:12 +0000 (09:24 +0000)
commit699773a867d1095790cce38744d9b2c38a1f551e
tree21dba452bf538f3dc8e4e4d1d87b396a971dccb8
parent708258aba60cfeb092b11c2aa6bb867dce233d47
kvm, arm: Fix incorrect PSTATE sync

The state transfer code wasn't reading back PSTATE correctly from the
CPU prior to updating the thread context and was incorreclty writing
the register as a 32-bit value when updating KVM. Correctly read back
the state before updating gem5's view of PSTATE and cast the value to
a uint64_t.

Change-Id: I0a6ff5b77b897c756b20a20f65c420f42386360f
Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/2963
Reviewed-by: Rahul Thakur <rjthakur@google.com>
src/arch/arm/kvm/armv8_cpu.cc