Skip to content

Commit 496ed3f

Browse files
committed
Moving CBufferRowSizeInBytes constant to HLSLResource.h
1 parent 7a45f4b commit 496ed3f

File tree

4 files changed

+8
-5
lines changed

4 files changed

+8
-5
lines changed

clang/lib/CodeGen/CGHLSLRuntime.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ using namespace CodeGen;
4040
using namespace clang::hlsl;
4141
using namespace llvm;
4242

43+
using llvm::hlsl::CBufferRowSizeInBytes;
44+
4345
static void createResourceInitFn(CodeGenModule &CGM, llvm::GlobalVariable *GV,
4446
unsigned Slot, unsigned Space);
4547

@@ -208,7 +210,7 @@ static void fillPackoffsetLayout(const HLSLBufferDecl *BufDecl,
208210
if (RBA->getRegisterType() ==
209211
HLSLResourceBindingAttr::RegisterType::C) {
210212
// size of constant buffer row is 16 bytes
211-
Offset = RBA->getSlotNumber() * CGHLSLRuntime::BufferRowSizeInBytes;
213+
Offset = RBA->getSlotNumber() * CBufferRowSizeInBytes;
212214
}
213215
}
214216
}

clang/lib/CodeGen/CGHLSLRuntime.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,8 +134,6 @@ class CGHLSLRuntime {
134134
BufferResBinding(HLSLResourceBindingAttr *Attr);
135135
};
136136

137-
static const unsigned BufferRowSizeInBytes = 16U;
138-
139137
protected:
140138
CodeGenModule &CGM;
141139

clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
using namespace clang;
2121
using namespace clang::CodeGen;
22+
using llvm::hlsl::CBufferRowSizeInBytes;
2223

2324
namespace {
2425

@@ -197,7 +198,7 @@ bool HLSLBufferLayoutBuilder::layoutField(const FieldDecl *FD,
197198
unsigned ArrayStride = 0;
198199

199200
unsigned NextRowOffset =
200-
llvm::alignTo(EndOffset, CGHLSLRuntime::BufferRowSizeInBytes);
201+
llvm::alignTo(EndOffset, CBufferRowSizeInBytes);
201202

202203
llvm::Type *ElemLayoutTy = nullptr;
203204
QualType FieldTy = FD->getType();
@@ -227,7 +228,7 @@ bool HLSLBufferLayoutBuilder::layoutField(const FieldDecl *FD,
227228
getScalarOrVectorSizeInBytes(CGM.getTypes().ConvertTypeForMem(Ty));
228229
ElemLayoutTy = CGM.getTypes().ConvertTypeForMem(FieldTy);
229230
}
230-
ArrayStride = llvm::alignTo(ElemSize, CGHLSLRuntime::BufferRowSizeInBytes);
231+
ArrayStride = llvm::alignTo(ElemSize, CBufferRowSizeInBytes);
231232
ElemOffset = (Packoffset != -1) ? Packoffset : NextRowOffset;
232233

233234
} else if (FieldTy->isStructureType()) {

llvm/include/llvm/Frontend/HLSL/HLSLResource.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ using dxil::ResourceClass;
2727
using dxil::ElementType;
2828
using dxil::ResourceKind;
2929

30+
const unsigned CBufferRowSizeInBytes = 16U;
31+
3032
class FrontendResource {
3133
MDNode *Entry;
3234

0 commit comments

Comments
 (0)