Update BasicAliasAnalysis to understand that nothing aliases with undef values.
authorDaniel Berlin <dberlin@dberlin.org>
Tue, 5 May 2015 18:10:49 +0000 (18:10 +0000)
committerDaniel Berlin <dberlin@dberlin.org>
Tue, 5 May 2015 18:10:49 +0000 (18:10 +0000)
commit3459d6ead59a2dd04a2f45cb356c867960748fa1
tree134f85423c41881e7dda19ede15d6d79859c074b
parent73cf872adb7983c464ad24dc28827defdf6b11d4
Update BasicAliasAnalysis to understand that nothing aliases with undef values.
It got this in some cases (if one of them was an identified object), but not in all cases.

This caused stores to undef to block load-forwarding in some cases, etc.

Added test to Transforms/GVN to verify optimization occurs as expected.

llvm-svn: 236511
llvm/lib/Analysis/BasicAliasAnalysis.cpp
llvm/test/Transforms/GVN/basic-undef-test.ll [new file with mode: 0644]