From 4bd9a3ca53cbd2ac25b47589ee54e8777bddd2de Mon Sep 17 00:00:00 2001 From: Glenn Smith Date: Mon, 21 Mar 2022 19:31:45 -0400 Subject: Fix LLIL_FCMP_O not being handled in a couple places Fixes #3032 --- lowlevelilinstruction.cpp | 2 ++ python/lowlevelil.py | 14 ++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/lowlevelilinstruction.cpp b/lowlevelilinstruction.cpp index 59a3ad55..fe386e8d 100644 --- a/lowlevelilinstruction.cpp +++ b/lowlevelilinstruction.cpp @@ -216,6 +216,7 @@ unordered_map> LowLevelILI {LLIL_FCMP_LE, {LeftExprLowLevelOperandUsage, RightExprLowLevelOperandUsage}}, {LLIL_FCMP_GE, {LeftExprLowLevelOperandUsage, RightExprLowLevelOperandUsage}}, {LLIL_FCMP_GT, {LeftExprLowLevelOperandUsage, RightExprLowLevelOperandUsage}}, + {LLIL_FCMP_O, {LeftExprLowLevelOperandUsage, RightExprLowLevelOperandUsage}}, {LLIL_FCMP_UO, {LeftExprLowLevelOperandUsage, RightExprLowLevelOperandUsage}}}; @@ -1914,6 +1915,7 @@ void LowLevelILInstruction::VisitExprs(const std::function ExpressionIndex: + """ + ``float_compare_ordered`` returns floating point comparison expression of size ``size`` checking if + expression ``a`` is ordered relative to expression ``b`` + + :param int size: the size of the operands in bytes + :param ExpressionIndex a: LHS expression + :param ExpressionIndex b: RHS expression + :param str flags: flags to set + :return: The expression ``is_ordered(a, b)`` + :rtype: ExpressionIndex + """ + return self.expr(LowLevelILOperation.LLIL_FCMP_O, a, b) + def float_compare_unordered(self, size: int, a: ExpressionIndex, b: ExpressionIndex) -> ExpressionIndex: """ ``float_compare_unordered`` returns floating point comparison expression of size ``size`` checking if -- cgit v1.3.1