+/*
+ * KVMPPC_INST_BOOK3S_DEBUG is debug Instruction for supporting Software Breakpoint.
+ * Based on PowerISA v2.07, Instruction with opcode 0s will be treated as illegal
+ * instruction.
+ */
"primary opcode 0" instead?
+#define OP_ZERO 0x0
Using 0x0 where you mean 0, making a #define for 0 in the first place...
This all looks rather silly doesn't it.
+ case OP_ZERO:
+ if((inst & 0x00FFFF00) == KVMPPC_INST_BOOK3S_DEBUG) {
You either shouldn't mask at all here, or the mask is wrong (the primary
op is the top six bits, not the top eight).
Segher