diff options
| author | Michael Kruse <llvm@meinersbur.de> | 2017-08-03 22:00:01 +0000 |
|---|---|---|
| committer | Michael Kruse <llvm@meinersbur.de> | 2017-08-03 22:00:01 +0000 |
| commit | 1046aa31488b9c7cc6cfbe8847af699c7afb6887 (patch) | |
| tree | 4629180645de11826fc2ccded699fee58bcf90f3 | |
| parent | a52391f2dbff6f93bc29158d9d085ad15cc796ec (diff) | |
| download | bcm5719-llvm-1046aa31488b9c7cc6cfbe8847af699c7afb6887.tar.gz bcm5719-llvm-1046aa31488b9c7cc6cfbe8847af699c7afb6887.zip | |
[VirtualInstruction] Handle MetadataAsValue as constant.
The complication of bspatch.cc of the AOSP buildbot currently fails
presumably because the occurance of a MetadataAsValue in an operand.
This kind of value can occur as operands of intrinsics, the typical
example being the debug intrinsics.
Polly currently ignores the debug intrinsics and it is not yet clear
which other intrinic might occur. For such cases, and to unbreak the
AOSP buildbot, treat a MetadataAsValue as a constant because it can be
referenced without modification in generated code.
llvm-svn: 309992
| -rw-r--r-- | polly/lib/Support/VirtualInstruction.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/polly/lib/Support/VirtualInstruction.cpp b/polly/lib/Support/VirtualInstruction.cpp index d2b910100d9..614ea9243d9 100644 --- a/polly/lib/Support/VirtualInstruction.cpp +++ b/polly/lib/Support/VirtualInstruction.cpp @@ -38,7 +38,7 @@ VirtualUse VirtualUse::create(Scop *S, ScopStmt *UserStmt, Loop *UserScope, if (isa<BasicBlock>(Val)) return VirtualUse(UserStmt, Val, Block, nullptr, nullptr); - if (isa<llvm::Constant>(Val)) + if (isa<llvm::Constant>(Val) || isa<MetadataAsValue>(Val)) return VirtualUse(UserStmt, Val, Constant, nullptr, nullptr); // Is the value synthesizable? If the user has been pruned |

