From 1d45879f484517cf1893a748cc432acab2c79c39 Mon Sep 17 00:00:00 2001 From: Dmitry Sidorov Date: Sun, 2 Aug 2020 14:49:49 +0300 Subject: [PATCH] [SPIR-V] Add CapabilityFPGABufferLocationINTEL only when the decoration is added Signed-off-by: Dmitry Sidorov --- llvm-spirv/lib/SPIRV/SPIRVWriter.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/llvm-spirv/lib/SPIRV/SPIRVWriter.cpp b/llvm-spirv/lib/SPIRV/SPIRVWriter.cpp index 25988f58ea76d..5cc55bca85d5b 100644 --- a/llvm-spirv/lib/SPIRV/SPIRVWriter.cpp +++ b/llvm-spirv/lib/SPIRV/SPIRVWriter.cpp @@ -563,10 +563,11 @@ SPIRVFunction *LLVMToSPIRV::transFunctionDecl(Function *F) { // Order of integer numbers in MD node follows the order of function // parameters on which we shall attach the appropriate decoration. Add // decoration only if MD value is not negative. - BM->addCapability(CapabilityFPGABufferLocationINTEL); int LocID = getMDOperandAsInt(BufferLocation, ArgNo); - if (LocID >= 0) + if (LocID >= 0) { + BM->addCapability(CapabilityFPGABufferLocationINTEL); BA->addDecorate(DecorationBufferLocationINTEL, LocID); + } } } if (Attrs.hasAttribute(AttributeList::ReturnIndex, Attribute::ZExt))