summaryrefslogtreecommitdiff
path: root/lowlevelilinstruction.cpp
diff options
context:
space:
mode:
authorRusty Wagner <rusty@vector35.com>2018-01-31 21:08:05 -0500
committerRusty Wagner <rusty@vector35.com>2018-01-31 21:08:05 -0500
commitfd51307c7fa5baff29860b1e3be09aafca13c2f0 (patch)
tree2bb384a3a0660fec08aeedd318cc3f0876130586 /lowlevelilinstruction.cpp
parent2f3873928078e8c21911ffeb5476781b31886514 (diff)
Allow intrinsics to write flags
Diffstat (limited to 'lowlevelilinstruction.cpp')
-rw-r--r--lowlevelilinstruction.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/lowlevelilinstruction.cpp b/lowlevelilinstruction.cpp
index 2c00db68..1a834435 100644
--- a/lowlevelilinstruction.cpp
+++ b/lowlevelilinstruction.cpp
@@ -2139,7 +2139,7 @@ ExprId LowLevelILInstruction::CopyTo(LowLevelILFunction* dest,
for (auto& i : GetParameterExprs<LLIL_INTRINSIC>())
params.push_back(subExprHandler(i));
return dest->Intrinsic(GetOutputRegisterOrFlagList<LLIL_INTRINSIC>(), GetIntrinsic<LLIL_INTRINSIC>(),
- params, *this);
+ params, flags, *this);
case LLIL_INTRINSIC_SSA:
for (auto& i : GetParameterExprs<LLIL_INTRINSIC_SSA>())
params.push_back(subExprHandler(i));
@@ -3212,9 +3212,9 @@ ExprId LowLevelILFunction::SystemCall(const ILSourceLocation& loc)
ExprId LowLevelILFunction::Intrinsic(const vector<RegisterOrFlag>& outputs, uint32_t intrinsic,
- const vector<ExprId>& params, const ILSourceLocation& loc)
+ const vector<ExprId>& params, uint32_t flags, const ILSourceLocation& loc)
{
- return AddExprWithLocation(LLIL_INTRINSIC, loc, 0, 0,
+ return AddExprWithLocation(LLIL_INTRINSIC, loc, 0, flags,
outputs.size(), AddRegisterOrFlagList(outputs), intrinsic,
AddExprWithLocation(LLIL_CALL_PARAM, loc, 0, 0, params.size(), AddOperandList(params)));
}