expect_gp
#define GUEST_ASSERT_PMC_MSR_ACCESS(insn, msr, expect_gp, vector) \
__GUEST_ASSERT(expect_gp ? vector == GP_VECTOR : !vector, \
expect_gp ? "#GP" : "no fault", msr, ex_str(vector)) \
const bool expect_gp = !expect_success && msr != MSR_P6_PERFCTR0 &&
GUEST_ASSERT_PMC_MSR_ACCESS(WRMSR, msr, expect_gp, vector);
GUEST_ASSERT_PMC_MSR_ACCESS(RDMSR, msr, expect_gp, vector);
if (!expect_gp)
GUEST_ASSERT_PMC_MSR_ACCESS(WRMSR, msr, expect_gp, vector);
expect_gp(0xed);
expect_gp(0x80);
expect_gp(0x80);
expect_gp(0xed);
expect_gp(0xed);
expect_gp(0x80);
expect_gp(0xed);