================
@@ -3428,6 +3430,28 @@ static SpirvOperand checkHLSLSpirvTypeOperand(Sema 
&SemaRef,
   return SpirvOperand::createType(OperandArg);
 }
 
+static QualType sortBuiltinTemplatePack(ASTContext &Context,
+                                        ArrayRef<TemplateArgument> InputArgs) {
+  // FIXME: cache mangling globally?
+  std::unique_ptr<MangleContext> MC(Context.createMangleContext());
+  SmallVector<std::pair<std::string, TemplateArgument>> SortedArgs(
+      InputArgs.size());
+  llvm::transform(
+      InputArgs, SortedArgs.begin(), [&](const TemplateArgument &Arg) {
+        assert(Arg.getKind() == TemplateArgument::Type);
+        std::string MangledName;
+        llvm::raw_string_ostream OS(MangledName);
+        MC->mangleCanonicalTypeName(Arg.getAsType(), OS);
----------------
zyn0217 wrote:

Do we end up with different sort result on different platforms?

https://github.com/llvm/llvm-project/pull/225025
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to