From 309e4b3d84987bba9d8ad0990c8cbec781f90b7a Mon Sep 17 00:00:00 2001 From: Galen Williamson Date: Tue, 28 May 2024 20:41:04 -0400 Subject: improve lifting of arm64 CSET instruction per Vector35/binaryninja-api#5134 --- arch/arm64/il.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'arch/arm64/il.cpp') diff --git a/arch/arm64/il.cpp b/arch/arm64/il.cpp index d3c3e943..13ff0d2a 100644 --- a/arch/arm64/il.cpp +++ b/arch/arm64/il.cpp @@ -1447,9 +1447,9 @@ bool GetLowLevelILForInstruction( ILSETREG_O(operand1, il.Neg(REGSZ_O(operand1), ILREG_O(operand3)))); break; case ARM64_CSET: - GenIfElse(il, GetCondition(il, operand2.cond), - ILSETREG_O(operand1, il.Const(REGSZ_O(operand1), 1)), - ILSETREG_O(operand1, il.Const(REGSZ_O(operand1), 0))); + il.AddInstruction( + ILSETREG_O(operand1, + il.BoolToInt(REGSZ_O(operand1), GetCondition(il, operand2.cond)))); break; case ARM64_CSETM: GenIfElse(il, GetCondition(il, operand2.cond), -- cgit v1.3.1