By using stripPointerCasts we can get to the root
value and then walk down the bitcast graph
Details
Diff Detail
- Build Status
Buildable 2514 Build 2514: arc lint + arc unit
Event Timeline
BTW I think I also don't need SeenOperands set now because there is no way I could insert the same operand twice
lib/Analysis/MemoryDependenceAnalysis.cpp | ||
---|---|---|
363–364 | Good catch. There is check for GlobalValue on beginning of the function, but it check for pointerOperand. | |
378 | I just moved it from line 372 |
lib/Analysis/MemoryDependenceAnalysis.cpp | ||
---|---|---|
360 | I deleted SmallSet of 14 elements, so I thought I can be more lavish here :) | |
test/Transforms/GVN/invariant.group.ll | ||
372–393 | Excuse me, but I don't understand your comment. Is there anything wrong with my patch, or is it just comment about the perfect world? |
lib/Analysis/MemoryDependenceAnalysis.cpp | ||
---|---|---|
360 | 8 would be probably still enough, I never did any measurements, so if you would like, I can change it back to 8 |
lib/Analysis/MemoryDependenceAnalysis.cpp | ||
---|---|---|
360 | I think we can leave it as is. In case the malloc traffic hints we should choose a larger value, fair enough, but I wouldn't change without backing data/real justification :) | |
test/Transforms/GVN/invariant.group.ll | ||
372–393 | You may want to run utils/update_test_checks.py on this to autogenerate checks. |
test/Transforms/GVN/invariant.group.ll | ||
---|---|---|
372–393 | I still don't understand what this script is doing. I runned it, and it only reformatted test (reduced indentation), but non of the check comments have been changed |
Any reason why did you change the initial size of the SmallVector?