angr.analyses.decompiler.peephole_optimizations.sar_to_signed_div

class angr.analyses.decompiler.peephole_optimizations.sar_to_signed_div.SarToSignedDiv

Bases: PeepholeOptimizationExprBase

Simplify signed divisions that are optimized into bit shifts during compilation.

NAME = '(signed(expr)? expr + A ** 2 - 1: expr) >>s A => expr /s 2 ** A'
expr_classes = (<class 'angr.ailment.expression.BinaryOp'>,)
optimize(expr, stmt_idx=None, block=None, **kwargs)
Parameters: