Skip to content

Commit 2cc4bdd

Browse files
committed
C++: Added getAnExpr predicate to ValueNumber class
1 parent 168270c commit 2cc4bdd

File tree

4 files changed

+8
-0
lines changed

4 files changed

+8
-0
lines changed

cpp/ql/src/semmle/code/cpp/ir/implementation/aliased_ssa/gvn/ValueNumbering.qll

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,10 @@ class ValueNumber extends TValueNumber {
7878
or
7979
this instanceof TUniqueValueNumber and result = "Unique"
8080
}
81+
82+
Expr getAnExpr() {
83+
result = getAnInstruction().getUnconvertedResultExpression()
84+
}
8185
}
8286

8387
/**
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import cpp
12
import semmle.code.cpp.ir.implementation.aliased_ssa.IR
23
import semmle.code.cpp.ir.internal.Overlap
34
import semmle.code.cpp.ir.internal.IRCppLanguage as Language

cpp/ql/src/semmle/code/cpp/ir/implementation/unaliased_ssa/gvn/ValueNumbering.qll

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,8 @@ class ValueNumber extends TValueNumber {
6666
or
6767
this instanceof TUniqueValueNumber and result = "Unique"
6868
}
69+
70+
Expr getAnExpr() { result = getAnInstruction().getUnconvertedResultExpression() }
6971
}
7072

7173
/**
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import cpp
12
import semmle.code.cpp.ir.implementation.unaliased_ssa.IR
23
import semmle.code.cpp.ir.internal.Overlap
34
import semmle.code.cpp.ir.internal.IRCppLanguage as Language

0 commit comments

Comments
 (0)