@@ -188,6 +188,8 @@ typedef enum MlirLLVMCConv MlirLLVMCConv;
188188MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMCConvAttrGet (MlirContext ctx ,
189189 MlirLLVMCConv cconv );
190190
191+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMCConvAttrGetName (void );
192+
191193enum MlirLLVMComdat {
192194 MlirLLVMComdatAny = 0 ,
193195 MlirLLVMComdatExactMatch = 1 ,
@@ -201,6 +203,8 @@ typedef enum MlirLLVMComdat MlirLLVMComdat;
201203MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMComdatAttrGet (MlirContext ctx ,
202204 MlirLLVMComdat comdat );
203205
206+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMComdatAttrGetName (void );
207+
204208enum MlirLLVMLinkage {
205209 MlirLLVMLinkageExternal = 0 ,
206210 MlirLLVMLinkageAvailableExternally = 1 ,
@@ -220,18 +224,26 @@ typedef enum MlirLLVMLinkage MlirLLVMLinkage;
220224MLIR_CAPI_EXPORTED MlirAttribute
221225mlirLLVMLinkageAttrGet (MlirContext ctx , MlirLLVMLinkage linkage );
222226
227+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMLinkageAttrGetName (void );
228+
223229/// Creates a LLVM DINullType attribute.
224230MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDINullTypeAttrGet (MlirContext ctx );
225231
232+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDINullTypeAttrGetName (void );
233+
226234/// Creates a LLVM DIExpressionElem attribute.
227235MLIR_CAPI_EXPORTED MlirAttribute
228236mlirLLVMDIExpressionElemAttrGet (MlirContext ctx , unsigned int opcode ,
229237 intptr_t nArguments , uint64_t const * arguments );
230238
239+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDIExpressionElemAttrGetName (void );
240+
231241/// Creates a LLVM DIExpression attribute.
232242MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDIExpressionAttrGet (
233243 MlirContext ctx , intptr_t nOperations , MlirAttribute const * operations );
234244
245+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDIExpressionAttrGetName (void );
246+
235247enum MlirLLVMTypeEncoding {
236248 MlirLLVMTypeEncodingAddress = 0x1 ,
237249 MlirLLVMTypeEncodingBoolean = 0x2 ,
@@ -261,6 +273,8 @@ MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDIBasicTypeAttrGet(
261273 MlirContext ctx , unsigned int tag , MlirAttribute name , uint64_t sizeInBits ,
262274 MlirLLVMTypeEncoding encoding );
263275
276+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDIBasicTypeAttrGetName (void );
277+
264278/// Creates a self-referencing LLVM DICompositeType attribute.
265279MLIR_CAPI_EXPORTED MlirAttribute
266280mlirLLVMDICompositeTypeAttrGetRecSelf (MlirAttribute recId );
@@ -274,6 +288,8 @@ MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDICompositeTypeAttrGet(
274288 MlirAttribute dataLocation , MlirAttribute rank , MlirAttribute allocated ,
275289 MlirAttribute associated );
276290
291+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDICompositeTypeAttrGetName (void );
292+
277293/// Creates a LLVM DIDerivedType attribute. Note that `dwarfAddressSpace` is an
278294/// optional field, where `MLIR_CAPI_DWARF_ADDRESS_SPACE_NULL` indicates null
279295/// and non-negative values indicate a value present.
@@ -282,12 +298,16 @@ MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDIDerivedTypeAttrGet(
282298 MlirAttribute baseType , uint64_t sizeInBits , uint32_t alignInBits ,
283299 uint64_t offsetInBits , int64_t dwarfAddressSpace , MlirAttribute extraData );
284300
301+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDIDerivedTypeAttrGetName (void );
302+
285303MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDIStringTypeAttrGet (
286304 MlirContext ctx , unsigned int tag , MlirAttribute name , uint64_t sizeInBits ,
287305 uint32_t alignInBits , MlirAttribute stringLength ,
288306 MlirAttribute stringLengthExp , MlirAttribute stringLocationExp ,
289307 MlirLLVMTypeEncoding encoding );
290308
309+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDIStringTypeAttrGetName (void );
310+
291311/// Constant to represent std::nullopt for dwarfAddressSpace to omit the field.
292312#define MLIR_CAPI_DWARF_ADDRESS_SPACE_NULL -1
293313
@@ -300,6 +320,8 @@ MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDIFileAttrGet(MlirContext ctx,
300320 MlirAttribute name ,
301321 MlirAttribute directory );
302322
323+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDIFileAttrGetName (void );
324+
303325enum MlirLLVMDIEmissionKind {
304326 MlirLLVMDIEmissionKindNone = 0 ,
305327 MlirLLVMDIEmissionKindFull = 1 ,
@@ -323,26 +345,36 @@ MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDICompileUnitAttrGet(
323345 MlirLLVMDIEmissionKind emissionKind , MlirLLVMDINameTableKind nameTableKind ,
324346 MlirAttribute splitDebugFilename );
325347
348+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDICompileUnitAttrGetName (void );
349+
326350/// Creates a LLVM DIFlags attribute.
327351MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDIFlagsAttrGet (MlirContext ctx ,
328352 uint64_t value );
329353
354+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDIFlagsAttrGetName (void );
355+
330356/// Creates a LLVM DILexicalBlock attribute.
331357MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDILexicalBlockAttrGet (
332358 MlirContext ctx , MlirAttribute scope , MlirAttribute file , unsigned int line ,
333359 unsigned int column );
334360
361+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDILexicalBlockAttrGetName (void );
362+
335363/// Creates a LLVM DILexicalBlockFile attribute.
336364MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDILexicalBlockFileAttrGet (
337365 MlirContext ctx , MlirAttribute scope , MlirAttribute file ,
338366 unsigned int discriminator );
339367
368+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDILexicalBlockFileAttrGetName (void );
369+
340370/// Creates a LLVM DILocalVariableAttr attribute.
341371MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDILocalVariableAttrGet (
342372 MlirContext ctx , MlirAttribute scope , MlirAttribute name ,
343373 MlirAttribute diFile , unsigned int line , unsigned int arg ,
344374 unsigned int alignInBits , MlirAttribute diType , int64_t flags );
345375
376+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDILocalVariableAttrGetName (void );
377+
346378/// Creates a self-referencing LLVM DISubprogramAttr attribute.
347379MLIR_CAPI_EXPORTED MlirAttribute
348380mlirLLVMDISubprogramAttrGetRecSelf (MlirAttribute recId );
@@ -356,10 +388,14 @@ MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDISubprogramAttrGet(
356388 intptr_t nRetainedNodes , MlirAttribute const * retainedNodes ,
357389 intptr_t nAnnotations , MlirAttribute const * annotations );
358390
391+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDISubprogramAttrGetName (void );
392+
359393/// Creates a LLVM DIAnnotation attribute.
360394MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDIAnnotationAttrGet (
361395 MlirContext ctx , MlirAttribute name , MlirAttribute value );
362396
397+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDIAnnotationAttrGetName (void );
398+
363399/// Gets the scope from this DISubprogramAttr.
364400MLIR_CAPI_EXPORTED MlirAttribute
365401mlirLLVMDISubprogramAttrGetScope (MlirAttribute diSubprogram );
@@ -389,18 +425,24 @@ MLIR_CAPI_EXPORTED MlirAttribute
389425mlirLLVMDISubroutineTypeAttrGet (MlirContext ctx , unsigned int callingConvention ,
390426 intptr_t nTypes , MlirAttribute const * types );
391427
428+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDISubroutineTypeAttrGetName (void );
429+
392430/// Creates a LLVM DIModuleAttr attribute.
393431MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDIModuleAttrGet (
394432 MlirContext ctx , MlirAttribute file , MlirAttribute scope ,
395433 MlirAttribute name , MlirAttribute configMacros , MlirAttribute includePath ,
396434 MlirAttribute apinotes , unsigned int line , bool isDecl );
397435
436+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDIModuleAttrGetName (void );
437+
398438/// Creates a LLVM DIImportedEntityAttr attribute.
399439MLIR_CAPI_EXPORTED MlirAttribute mlirLLVMDIImportedEntityAttrGet (
400440 MlirContext ctx , unsigned int tag , MlirAttribute scope ,
401441 MlirAttribute entity , MlirAttribute file , unsigned int line ,
402442 MlirAttribute name , intptr_t nElements , MlirAttribute const * elements );
403443
444+ MLIR_CAPI_EXPORTED MlirStringRef mlirLLVMDIImportedEntityAttrGetName (void );
445+
404446/// Gets the scope of this DIModuleAttr.
405447MLIR_CAPI_EXPORTED MlirAttribute
406448mlirLLVMDIModuleAttrGetScope (MlirAttribute diModule );
0 commit comments