diff options
Diffstat (limited to 'contrib/llvm/lib/Target/NVPTX/NVVMIntrRange.cpp')
-rw-r--r-- | contrib/llvm/lib/Target/NVPTX/NVVMIntrRange.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/contrib/llvm/lib/Target/NVPTX/NVVMIntrRange.cpp b/contrib/llvm/lib/Target/NVPTX/NVVMIntrRange.cpp index b9c02c4..9c71a2e 100644 --- a/contrib/llvm/lib/Target/NVPTX/NVVMIntrRange.cpp +++ b/contrib/llvm/lib/Target/NVPTX/NVVMIntrRange.cpp @@ -65,6 +65,10 @@ INITIALIZE_PASS(NVVMIntrRange, "nvvm-intr-range", // Adds the passed-in [Low,High) range information as metadata to the // passed-in call instruction. static bool addRangeMetadata(uint64_t Low, uint64_t High, CallInst *C) { + // This call already has range metadata, nothing to do. + if (C->getMetadata(LLVMContext::MD_range)) + return false; + LLVMContext &Context = C->getParent()->getContext(); IntegerType *Int32Ty = Type::getInt32Ty(Context); Metadata *LowAndHigh[] = { |