diff options
author | Alexander Graf <agraf@suse.de> | 2010-03-24 16:48:33 -0400 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2010-05-17 05:17:15 -0400 |
commit | bd7cdbb7fcd135a399ebb855dc9106747ee2e6ba (patch) | |
tree | d0816eab67fb642dfab5597bd9f797c4078af05b /arch/powerpc | |
parent | 9fb244a2c215d1e16ee92cb164b7b61c8dfa3909 (diff) |
KVM: PPC: Add emulation for dcba
Mac OS X uses the dcba instruction. According to the specification it doesn't
guarantee any functionality, so let's just emulate it as nop.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/kvm/book3s_64_emulate.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/powerpc/kvm/book3s_64_emulate.c b/arch/powerpc/kvm/book3s_64_emulate.c index bbd15906900d..8f50776a9a1d 100644 --- a/arch/powerpc/kvm/book3s_64_emulate.c +++ b/arch/powerpc/kvm/book3s_64_emulate.c | |||
@@ -37,6 +37,7 @@ | |||
37 | #define OP_31_XOP_SLBIA 498 | 37 | #define OP_31_XOP_SLBIA 498 |
38 | #define OP_31_XOP_MFSR 595 | 38 | #define OP_31_XOP_MFSR 595 |
39 | #define OP_31_XOP_MFSRIN 659 | 39 | #define OP_31_XOP_MFSRIN 659 |
40 | #define OP_31_XOP_DCBA 758 | ||
40 | #define OP_31_XOP_SLBMFEV 851 | 41 | #define OP_31_XOP_SLBMFEV 851 |
41 | #define OP_31_XOP_EIOIO 854 | 42 | #define OP_31_XOP_EIOIO 854 |
42 | #define OP_31_XOP_SLBMFEE 915 | 43 | #define OP_31_XOP_SLBMFEE 915 |
@@ -183,6 +184,9 @@ int kvmppc_core_emulate_op(struct kvm_run *run, struct kvm_vcpu *vcpu, | |||
183 | kvmppc_set_gpr(vcpu, get_rt(inst), t); | 184 | kvmppc_set_gpr(vcpu, get_rt(inst), t); |
184 | } | 185 | } |
185 | break; | 186 | break; |
187 | case OP_31_XOP_DCBA: | ||
188 | /* Gets treated as NOP */ | ||
189 | break; | ||
186 | case OP_31_XOP_DCBZ: | 190 | case OP_31_XOP_DCBZ: |
187 | { | 191 | { |
188 | ulong rb = kvmppc_get_gpr(vcpu, get_rb(inst)); | 192 | ulong rb = kvmppc_get_gpr(vcpu, get_rb(inst)); |