diff options
| author | Mark Rowe <mrowe@bdash.net.nz> | 2025-05-27 15:11:43 -0700 |
|---|---|---|
| committer | Mason Reed <mason@vector35.com> | 2025-05-30 19:17:10 -0400 |
| commit | 6e8116614b43097800f0e7b493260c4aaadd7c29 (patch) | |
| tree | fe4e8252604362b702aadb285d076f8316f1304f /rust/src/low_level_il/instruction.rs | |
| parent | abc355d98467bc1fce4368d4a7e1aff0e12cc3c3 (diff) | |
[Rust] Add support for LLIL_REG_PHI / LLIL_MEM_PHI / LLIL_FLAG_PHI
Diffstat (limited to 'rust/src/low_level_il/instruction.rs')
| -rw-r--r-- | rust/src/low_level_il/instruction.rs | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/rust/src/low_level_il/instruction.rs b/rust/src/low_level_il/instruction.rs index 652706ea..04a1d2d5 100644 --- a/rust/src/low_level_il/instruction.rs +++ b/rust/src/low_level_il/instruction.rs @@ -254,6 +254,10 @@ where ForceVersion(Operation<'func, M, F, operation::ForceVersion>), ForceVersionSsa(Operation<'func, M, F, operation::ForceVersionSsa>), + RegPhi(Operation<'func, M, F, operation::RegPhi>), + FlagPhi(Operation<'func, M, F, operation::FlagPhi>), + MemPhi(Operation<'func, M, F, operation::MemPhi>), + /// The instruction is an expression. Value(LowLevelILExpression<'func, M, F, ValueExpr>), } @@ -357,6 +361,16 @@ where LLIL_FORCE_VER_SSA => { LowLevelILInstructionKind::ForceVersionSsa(Operation::new(function, op, expr_index)) } + LLIL_REG_PHI => { + LowLevelILInstructionKind::RegPhi(Operation::new(function, op, expr_index)) + } + LLIL_MEM_PHI => { + LowLevelILInstructionKind::MemPhi(Operation::new(function, op, expr_index)) + } + LLIL_FLAG_PHI => { + LowLevelILInstructionKind::FlagPhi(Operation::new(function, op, expr_index)) + } + _ => LowLevelILInstructionKind::Value(LowLevelILExpression::new(function, expr_index)), } } @@ -410,7 +424,8 @@ where Value(e) => visit!(e), // Do not have any sub expressions. Nop(_) | NoRet(_) | Goto(_) | Syscall(_) | Bp(_) | Trap(_) | Undef(_) | Assert(_) - | AssertSsa(_) | ForceVersion(_) | ForceVersionSsa(_) => {} + | AssertSsa(_) | ForceVersion(_) | ForceVersionSsa(_) | RegPhi(_) | FlagPhi(_) + | MemPhi(_) => {} } VisitorAction::Sibling |
