From 5c2f74fc32951fc038dca465985a4859c517ef47 Mon Sep 17 00:00:00 2001 From: Maxime Chevalier-Boisvert Date: Tue, 11 May 2021 16:33:28 -0400 Subject: Fix encoding of test x86 instruction --- yjit_asm.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'yjit_asm.c') diff --git a/yjit_asm.c b/yjit_asm.c index c47e1fd274..76fc3bf8db 100644 --- a/yjit_asm.c +++ b/yjit_asm.c @@ -1664,7 +1664,15 @@ void test(codeblock_t* cb, x86opnd_t rm_opnd, x86opnd_t test_opnd) else { assert (test_opnd.num_bits == rm_opnd.num_bits); - cb_write_rm(cb, false, rm_opnd.num_bits == 64, test_opnd, rm_opnd, 0xFF, 1, 0x85); + + if (rm_opnd.num_bits == 8) + { + cb_write_rm(cb, false, false, test_opnd, rm_opnd, 0xFF, 1, 0x84); + } + else + { + cb_write_rm(cb, rm_opnd.num_bits == 16, rm_opnd.num_bits == 64, test_opnd, rm_opnd, 0xFF, 1, 0x85); + } } } -- cgit v1.2.3