================
@@ -4493,28 +4493,34 @@ void CXXNameMangler::mangleType(const 
ArrayParameterType *T) {
 }
 
 void CXXNameMangler::mangleType(const HLSLAttributedResourceType *T) {
-  mangleType(T->getWrappedType());
+  llvm::SmallString<64> Str("_Res");
   const HLSLAttributedResourceType::Attributes &Attrs = T->getAttrs();
   // map resource class to HLSL virtual register letter
   switch (Attrs.ResourceClass) {
-  case llvm::dxil::ResourceClass::UAV:
-    Out << 'u';
+  case llvm::dxil::ResourceClass::UAV: 
+    Str += "_u";
     break;
-  case llvm::dxil::ResourceClass::SRV:
-    Out << 't';
+  case llvm::dxil::ResourceClass::SRV: 
+    Str += "_t";
     break;
   case llvm::dxil::ResourceClass::CBuffer:
-    Out << 'b';
+    Str += "_b";
     break;
   case llvm::dxil::ResourceClass::Sampler:
-    Out << 's';
+    Str += "_s";
     break;
   }
-  mangleNumber(Attrs.IsROV);
-  mangleNumber(Attrs.RawBuffer);
+  mangleVendorQualifier(Str);
+  if (Attrs.IsROV)
+    mangleVendorQualifier("_ROV");
+  if (Attrs.RawBuffer)
+    mangleVendorQualifier("_Raw");
 
-  if (!T->hasContainedType())
+  if (!T->hasContainedType()) {
+    mangleVendorQualifier("__CT");
----------------
hekota wrote:

Nope :) Thanks for the catch!

https://github.com/llvm/llvm-project/pull/110327
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to