angr.analyses.decompiler.optimization_passes.switch_reused_entry_rewriter¶
- class angr.analyses.decompiler.optimization_passes.switch_reused_entry_rewriter.SwitchReusedEntryRewriter¶
Bases:
OptimizationPassFor each switch-case construct (identified by jump tables), rewrite the entry into a goto block when we detect situations where an entry node is reused by edges in switch-case constructs that are not the current one. This code reuse is usually caused by compiler code deduplication.
- ARCHES = None¶
- PLATFORMS = None¶
- STAGE: OptimizationPassStage = 0¶
- NAME = 'Rewrite switch-case entry nodes with multiple predecessors into goto statements.'¶
- DESCRIPTION = 'For each switch-case construct (identified by jump tables), rewrite the entry into a goto block when we detect\n situations where an entry node is reused by edges in switch-case constructs that are not the current one. This code\n reuse is usually caused by compiler code deduplication.'¶
- __init__(*args, **kwargs)¶