24 std::string paramsBuffer;
26 paramsBuffer.reserve(80 * def.getParameters().size());
27 llvm::raw_string_ostream paramsStream(paramsBuffer);
29 for (
const auto ¶m : def.getParameters()) {
31 const StringRef cppType = param.getCppType();
32 const StringRef pName = param.getName();
35 paramsStream << llvm::formatv(
" intptr_t {0}Count = 0;\n", pName);
39 paramsStream << llvm::formatv(
" {0} {1}Array = 0;\n", elemType, pName);
40 paramsStream << llvm::formatv(
" {0} *{1} = &{1}Array;\n", elemType, pName);
41 }
else if (isType && elemType ==
"MlirType") {
42 paramsStream << llvm::formatv(
" auto {0}Elem = createIndexType();\n", pName);
43 paramsStream << llvm::formatv(
" {0} *{1} = &{0}Elem;\n", elemType, pName);
44 }
else if (!isType && elemType ==
"MlirAttribute") {
45 paramsStream << llvm::formatv(
" auto {0}Elem = createIndexAttribute();\n", pName);
46 paramsStream << llvm::formatv(
" {0} *{1} = &{0}Elem;\n", elemType, pName);
48 paramsStream << llvm::formatv(
" {0} {1}Elem = {{}};\n", elemType, pName);
49 paramsStream << llvm::formatv(
" {0} *{1} = &{1}Elem;\n", elemType, pName);
54 paramsStream << llvm::formatv(
" {0} {1} = 0;\n", capiType, pName);
55 }
else if (isType && capiType ==
"MlirType") {
56 paramsStream << llvm::formatv(
" auto {0} = createIndexType();\n", pName);
57 }
else if (!isType && capiType ==
"MlirAttribute") {
58 paramsStream << llvm::formatv(
" auto {0} = createIndexAttribute();\n", pName);
61 paramsStream << llvm::formatv(
" {0} {1} = static_cast<{0}>(0);\n", capiType, pName);
72 std::string paramsBuffer;
74 paramsBuffer.reserve(30 * def.getParameters().size());
75 llvm::raw_string_ostream paramsStream(paramsBuffer);
77 for (
const auto ¶m : def.getParameters()) {
79 const StringRef pName = param.getName();
81 paramsStream << llvm::formatv(
", {0}Count, {0}", pName);
83 paramsStream << llvm::formatv(
", {0}", pName);