Displaying 2 results from an estimated 2 matches for "finddominatingequivalent".
2017 Mar 03
4
Optionally using value numbering in Simplify*
...ton already[1], i
wanted to ask whether anyone had any opinion on whether it's worth doing.
VNImpl would probably look something like:
class VNImpl{
// return true if A and B are equivalent
bool areEquivalent(Value *A, Value *B);
// find a value that dominates A that is equivalent to it
Value *findDominatingEquivalent(Value *A);
// obvious
bool isBlockReachable(BasicBock *BB);
}
Thoughts on whether to do this (or alternatives), appreciated.
[1] I'm also unsure if i should do something about the number of arguments
these functions take, which would be 9 or 10 in a lot of cases now, since
some take 8 or 9....
2017 Mar 03
2
Optionally using value numbering in Simplify*
...ton already[1], i
wanted to ask whether anyone had any opinion on whether it's worth doing.
VNImpl would probably look something like:
class VNImpl{
// return true if A and B are equivalent
bool areEquivalent(Value *A, Value *B);
// find a value that dominates A that is equivalent to it
Value *findDominatingEquivalent(Value *A);
// obviousn
bool isBlockReachable(BasicBock *BB);
}
I'm not sure how you expect InstructionSimplify to use
findDominatingEquivalent.
Most places it uses strict equality and doesn't care. In all of those cases
newgvn has a single unique (but not always dominating) leader it co...