[PATCH] D130131: [HLSL] CodeGen hlsl cbuffer/tbuffer.
Xiang Li via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Wed Oct 12 17:37:31 PDT 2022
python3kgae marked an inline comment as done.
python3kgae added inline comments.
================
Comment at: clang/lib/CodeGen/CGDecl.cpp:131
case Decl::RequiresExprBody:
+ case Decl::HLSLBuffer:
// None of these decls require codegen support.
----------------
efriedma wrote:
> I'm a little confused by this. If it's possible to declare an HLSLBuffer inside a function, why don't you need to handle it? If it isn't possible to declare an HLSLBuffer this way, can you just move this to use the llvm_unreachable()?
Nice catch.
Fixed.
================
Comment at: clang/lib/CodeGen/CGHLSLRuntime.cpp:112
+ // Replace.
+ GV->replaceAllUsesWith(GEP);
+ // Erase GV.
----------------
efriedma wrote:
> Messing with globals like this feels a little weird, but I guess it's fine if nothing actually tries to use the erased globals after this code runs. I'm a little concerned that someone might accidentally rearrange the relevant code in the future (CodeGenModule has a bunch of maps which aren't cleared before this code runs).
These globals should not be in any map except Buf.Constants which is used here.
If another map has these globals, we should remove them from the map.
Cannot see any other map has these globals now.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D130131/new/
https://reviews.llvm.org/D130131
More information about the cfe-commits
mailing list