diff options
| author | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2014-12-07 21:12:10 +0000 |
|---|---|---|
| committer | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2014-12-07 21:12:10 +0000 |
| commit | 16173b7f6c9f3a967c0527f7b8ddc234edd27cd9 (patch) | |
| tree | 3129c3de186765d39b5de750a8d762db40beab5e /polly/lib/CodeGen | |
| parent | 9c51b50a714d06561ac69dc30c394cb3fcef5bb8 (diff) | |
| download | bcm5719-llvm-16173b7f6c9f3a967c0527f7b8ddc234edd27cd9.tar.gz bcm5719-llvm-16173b7f6c9f3a967c0527f7b8ddc234edd27cd9.zip | |
Stop relying on MDNode::get() returning self-references
Update for LLVM API change, wherein self-references are not uniqued (and
will never be returned by `MDNode::get()`). We already have `Id`; just
return it.
This should fix the failing buildbot:
http://lab.llvm.org:8011/builders/polly-amd64-linux/builds/25167
http://lab.llvm.org:8011/builders/polly-amd64-linux/builds/25168
llvm-svn: 223620
Diffstat (limited to 'polly/lib/CodeGen')
| -rw-r--r-- | polly/lib/CodeGen/IRBuilder.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/polly/lib/CodeGen/IRBuilder.cpp b/polly/lib/CodeGen/IRBuilder.cpp index 248f0cfb43c..22532b58307 100644 --- a/polly/lib/CodeGen/IRBuilder.cpp +++ b/polly/lib/CodeGen/IRBuilder.cpp @@ -95,9 +95,10 @@ void ScopAnnotator::pushLoop(Loop *L, bool IsParallel) { BasicBlock *Header = L->getHeader(); MDNode *Id = getID(Header->getContext()); - Value *Args[] = {Id}; + assert(Id->getOperand(0) == Id && "Expected Id to be a self-reference"); + assert(Id->getNumOperands() == 1 && "Unexpected extra operands in Id"); MDNode *Ids = ParallelLoops.empty() - ? MDNode::get(Header->getContext(), Args) + ? Id : MDNode::concatenate(ParallelLoops.back(), Id); ParallelLoops.push_back(Ids); } |

