Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
To check, does NewGVN fully replace one instruction with another, it they are considered equivalent?
This is to ensure that partial replacements like this doesn't happen:
a = freeze(x) b = freeze(x) use(a) use(b) use(b) =/=> use(a) use(a) use(b) // this is wrong; this also must be use(a).
b in this example must be fully replaced with a to be correct.
Comment Actions
To check, does NewGVN fully replace one instruction with another, it they are considered equivalent?
I am not 100% sure. Do we have any NewGVN experts?
Comment Actions
The operands of the two freeze instructions are the same. So, the two freeze instructions are equivalent. Therefore, all the uses of b will be replaced with a.