Predicate exprNeedsCopyIfNotLoaded
Holds if the translation of expr
will not directly generate any
Instruction
for use as result. For such instructions we can synthesize a
CopyValue
instruction to ensure that there is a 1-to-1 mapping between
expressions and result-bearing instructions.
Import path
import semmle.code.cpp.ir.implementation.raw.internal.TranslatedExpr
predicate exprNeedsCopyIfNotLoaded(Expr expr)