switch from pointer equality comparison to MDNode::getMostGenericTBAA

when merging two TBAA tags, pointed out by Nuno.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171627 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2013-01-05 16:44:07 +00:00
parent e4b4edd72a
commit 261304248f
3 changed files with 9 additions and 8 deletions

View File

@@ -803,10 +803,10 @@ bool InstCombiner::SimplifyStoreAtEndOfBlock(StoreInst &SI) {
NewSI->setDebugLoc(OtherStore->getDebugLoc());
// If the two stores had the same TBAA tag, preserve it.
if (MDNode *TBAATag1 = SI.getMetadata(LLVMContext::MD_tbaa))
if (MDNode *TBAATag2 = OtherStore->getMetadata(LLVMContext::MD_tbaa))
if (TBAATag1 == TBAATag2)
NewSI->setMetadata(LLVMContext::MD_tbaa, TBAATag1);
if (MDNode *TBAATag = SI.getMetadata(LLVMContext::MD_tbaa))
if ((TBAATag = MDNode::getMostGenericTBAA(TBAATag,
OtherStore->getMetadata(LLVMContext::MD_tbaa))))
NewSI->setMetadata(LLVMContext::MD_tbaa, TBAATag);
// Nuke the old stores.