예제 #1
0
/* Check that a boring instruction is decoded correctly. */
static struct ptunit_result ptunit_ild_boring(uint8_t *insn, uint8_t size,
					      enum pt_exec_mode mode)
{
	struct pt_ild ild;

	ptunit_ild_init(&ild, insn, size, mode);
	ptu_test(ptunit_ild_decode, &ild, pti_boring, size);

	return ptu_passed();
}
예제 #2
0
/* Check that a boring instruction is decoded correctly. */
static struct ptunit_result ptunit_ild_boring(pti_uint8_t *insn,
					      pti_uint32_t size,
					      pti_machine_mode_enum_t mode)
{
	pti_ild_t ild;

	ptunit_ild_init(&ild, insn, size, mode);
	ptu_test(ptunit_ild_decode, &ild, pti_boring, size);

	return ptu_passed();
}
예제 #3
0
/* Check that an interesting instruction is decoded and classified correctly. */
static struct ptunit_result ptunit_ild_classify(uint8_t *insn, uint8_t size,
						enum pt_exec_mode mode,
						pti_inst_enum_t iclass)
{
	struct pt_ild ild;

	ptunit_ild_init(&ild, insn, size, mode);
	ptu_test(ptunit_ild_decode, &ild, interesting, size);
	ptu_int_eq(ild.iclass, iclass);

	return ptu_passed();
}
예제 #4
0
/* Check that an interesting instruction is decoded and classified correctly. */
static struct ptunit_result ptunit_ild_classify(pti_uint8_t *insn,
						pti_uint32_t size,
						pti_machine_mode_enum_t mode,
						pti_inst_enum_t iclass)
{
	pti_ild_t ild;

	ptunit_ild_init(&ild, insn, size, mode);
	ptu_test(ptunit_ild_decode, &ild, pti_interesting, size);
	ptu_int_eq(ild.iclass, iclass);

	return ptu_passed();
}