Commit f6789f0d authored by Henrich Lauko's avatar Henrich Lauko

lart: Fix tobool taint generation.

parent 414a97dc
......@@ -405,18 +405,19 @@ namespace lart::abstract {
auto con = llvm::cast< llvm::Instruction >( concrete( ph.inst ) );
auto lif = lifter.inst;
if ( is_faultable( con ) ) {
_matched.concrete[ abstract( con ) ] = lif;
_matched.abstract[ lif ] = abstract( con );
_matched.abstract.erase( con );
con->replaceAllUsesWith( lif );
con->eraseFromParent();
} else {
_matched.match( T, lif, con );
if constexpr ( !Taint::toBool( T ) ) {
if ( is_faultable( con ) ) {
_matched.concrete[ abstract( con ) ] = lif;
_matched.abstract[ lif ] = abstract( con );
_matched.abstract.erase( con );
con->replaceAllUsesWith( lif );
con->eraseFromParent();
} else {
_matched.match( T, lif, con );
}
}
ph.inst->replaceAllUsesWith( lif );
}
template< typename Lifter, typename Placeholder >
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment