================
@@ -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