diff options
author | Michael Zolotukhin <mzolotukhin@apple.com> | 2015-08-20 22:28:15 +0000 |
---|---|---|
committer | Michael Zolotukhin <mzolotukhin@apple.com> | 2015-08-20 22:28:15 +0000 |
commit | 51b00e6d82405499c7e39e4af616141a744997b3 (patch) | |
tree | 2a0a90c7a34ebe8743b43241aa95ded933d337a7 /llvm/lib/Transforms | |
parent | 2a3d99fedfa9ed911ed35753cfe490b885340877 (diff) | |
download | bcm5719-llvm-51b00e6d82405499c7e39e4af616141a744997b3.tar.gz bcm5719-llvm-51b00e6d82405499c7e39e4af616141a744997b3.zip |
[SLP] Propagate 'nontemporal' attribute into vectorized instructions.
llvm-svn: 245633
Diffstat (limited to 'llvm/lib/Transforms')
-rw-r--r-- | llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp index df15a70753c..becd51a5727 100644 --- a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp +++ b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp @@ -242,6 +242,9 @@ static Instruction *propagateMetadata(Instruction *I, ArrayRef<Value *> VL) { case LLVMContext::MD_fpmath: MD = MDNode::getMostGenericFPMath(MD, IMD); break; + case LLVMContext::MD_nontemporal: + MD = MDNode::intersect(MD, IMD); + break; } } I->setMetadata(Kind, MD); |