Author: Helena Kotas Date: 2025-05-08T10:03:21-07:00 New Revision: 3bc3b1c6c0f35bf223c595f8426f6726d64553e7
URL: https://github.com/llvm/llvm-project/commit/3bc3b1c6c0f35bf223c595f8426f6726d64553e7 DIFF: https://github.com/llvm/llvm-project/commit/3bc3b1c6c0f35bf223c595f8426f6726d64553e7.diff LOG: [HLSL][NFC] Rename isImplicit() to hasRegisterStot() on HLSLResourceBindingAttr (#138964) Renaming because the name `isImplicit` is ambiguous. It can mean implicit attribute or implicit binding. Added: Modified: clang/include/clang/Basic/Attr.td clang/lib/CodeGen/CGHLSLRuntime.cpp clang/lib/Sema/SemaHLSL.cpp Removed: ################################################################################ diff --git a/clang/include/clang/Basic/Attr.td b/clang/include/clang/Basic/Attr.td index df7bba094fce6..37c80ac90182c 100644 --- a/clang/include/clang/Basic/Attr.td +++ b/clang/include/clang/Basic/Attr.td @@ -4785,15 +4785,15 @@ def HLSLResourceBinding: InheritableAttr { SlotNumber = SlotNum; SpaceNumber = SpaceNum; } - bool isImplicit() const { - return !SlotNumber.has_value(); + bool hasRegisterSlot() const { + return SlotNumber.has_value(); } RegisterType getRegisterType() const { - assert(!isImplicit() && "binding does not have register slot"); + assert(hasRegisterSlot() && "binding does not have register slot"); return RegType; } unsigned getSlotNumber() const { - assert(!isImplicit() && "binding does not have register slot"); + assert(hasRegisterSlot() && "binding does not have register slot"); return SlotNumber.value(); } unsigned getSpaceNumber() const { diff --git a/clang/lib/CodeGen/CGHLSLRuntime.cpp b/clang/lib/CodeGen/CGHLSLRuntime.cpp index f6608faaa7309..0eb4bb062e02e 100644 --- a/clang/lib/CodeGen/CGHLSLRuntime.cpp +++ b/clang/lib/CodeGen/CGHLSLRuntime.cpp @@ -261,7 +261,7 @@ void CGHLSLRuntime::addBuffer(const HLSLBufferDecl *BufDecl) { BufDecl->getAttr<HLSLResourceBindingAttr>(); // FIXME: handle implicit binding if no binding attribute is found // (llvm/llvm-project#110722) - if (RBA && !RBA->isImplicit()) + if (RBA && RBA->hasRegisterSlot()) initializeBufferFromBinding(CGM, BufGV, RBA->getSlotNumber(), RBA->getSpaceNumber()); } diff --git a/clang/lib/Sema/SemaHLSL.cpp b/clang/lib/Sema/SemaHLSL.cpp index 70aacaa2aadbe..08bd22a262788 100644 --- a/clang/lib/Sema/SemaHLSL.cpp +++ b/clang/lib/Sema/SemaHLSL.cpp @@ -1979,7 +1979,7 @@ void SemaHLSL::ActOnEndOfTranslationUnit(TranslationUnitDecl *TU) { for (const Decl *VD : DefaultCBufferDecls) { const HLSLResourceBindingAttr *RBA = VD->getAttr<HLSLResourceBindingAttr>(); - if (RBA && !RBA->isImplicit() && + if (RBA && RBA->hasRegisterSlot() && RBA->getRegisterType() == HLSLResourceBindingAttr::RegisterType::C) { DefaultCBuffer->setHasValidPackoffset(true); break; @@ -3271,7 +3271,7 @@ static bool initVarDeclWithCtor(Sema &S, VarDecl *VD, static bool initGlobalResourceDecl(Sema &S, VarDecl *VD) { HLSLResourceBindingAttr *RBA = VD->getAttr<HLSLResourceBindingAttr>(); - if (!RBA || RBA->isImplicit()) + if (!RBA || !RBA->hasRegisterSlot()) // FIXME: add support for implicit binding (llvm/llvm-project#110722) return false; @@ -3356,7 +3356,7 @@ void SemaHLSL::processExplicitBindingsOnDecl(VarDecl *VD) { bool HasBinding = false; for (Attr *A : VD->attrs()) { HLSLResourceBindingAttr *RBA = dyn_cast<HLSLResourceBindingAttr>(A); - if (!RBA || RBA->isImplicit()) + if (!RBA || !RBA->hasRegisterSlot()) continue; HasBinding = true; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits