Skip to content

Commit

Permalink
Fix isSymbolic computation for IteNode
Browse files Browse the repository at this point in the history
  • Loading branch information
cnheitman committed Sep 29, 2023
1 parent 8a6ee2f commit dbc530f
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion src/libtriton/ast/ast.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2716,10 +2716,16 @@ namespace triton {
/* Init children and spread information */
for (triton::uint32 index = 0; index < this->children.size(); index++) {
this->children[index]->setParent(this);
this->symbolized |= this->children[index]->isSymbolized();
this->level = std::max(this->children[index]->getLevel() + 1, this->level);
}

/* Spread symbolic information */
if (!this->children[0]->isSymbolized()) {
this->symbolized = this->children[0]->evaluate() ? this->children[1]->isSymbolized() : this->children[2]->isSymbolized();
} else {
this->symbolized = true;
}

/* Init parents if needed */
if (withParents) {
this->initParents();
Expand Down

0 comments on commit dbc530f

Please sign in to comment.