[clang] [HLSL] Make sure `isSigned` flag is set on target type for `TypedBuffer` resources with signed int vectors (PR #130223)
Joshua Batista via cfe-commits
cfe-commits at lists.llvm.org
Thu Mar 13 19:35:53 PDT 2025
================
@@ -59,8 +59,14 @@ llvm::Type *DirectXTargetCodeGenInfo::getHLSLType(
SmallVector<unsigned, 3> Ints = {/*IsWriteable*/ ResAttrs.ResourceClass ==
llvm::dxil::ResourceClass::UAV,
/*IsROV*/ ResAttrs.IsROV};
- if (!ResAttrs.RawBuffer)
- Ints.push_back(/*IsSigned*/ ContainedTy->isSignedIntegerType());
+ if (!ResAttrs.RawBuffer) {
+ const clang::Type *ElemType = ContainedTy->getUnqualifiedDesugaredType();
+ if (ElemType->isVectorType())
----------------
bob80905 wrote:
Does it make sense to add a while loop here?
Could it be more than a 2D vector?
https://github.com/llvm/llvm-project/pull/130223
More information about the cfe-commits
mailing list