14
14
#include "mlir-c/BuiltinTypes.h"
15
15
#include "mlir-c/IR.h"
16
16
#include "mlir-c/Support.h"
17
+ #include "llvm-c/Core.h"
18
+ #include "llvm-c/DebugInfo.h"
17
19
18
20
#include <assert.h>
19
21
#include <inttypes.h>
@@ -231,11 +233,11 @@ static void testLLVMAttributes(MlirContext ctx) {
231
233
fprintf (stderr , "testLLVMAttributes\n" );
232
234
233
235
// CHECK: #llvm.linkage<internal>
234
- mlirAttributeDump (mlirLLVMLinkageAttrGet (ctx , 0x1 ));
236
+ mlirAttributeDump (mlirLLVMLinkageAttrGet (ctx , LLVMInternalLinkage ));
235
237
// CHECK: #llvm.cconv<ccc>
236
- mlirAttributeDump (mlirLLVMCConvAttrGet (ctx , 0x0 ));
238
+ mlirAttributeDump (mlirLLVMCConvAttrGet (ctx , LLVMCCallConv ));
237
239
// CHECK: #llvm<comdat any>
238
- mlirAttributeDump (mlirLLVMComdatAttrGet (ctx , 0x0 ));
240
+ mlirAttributeDump (mlirLLVMComdatAttrGet (ctx , LLVMAnyComdatSelectionKind ));
239
241
}
240
242
241
243
// CHECK-LABEL: testDebugInfoAttributes
@@ -250,9 +252,11 @@ static void testDebugInfoAttributes(MlirContext ctx) {
250
252
251
253
// CHECK: #llvm.di_null_type
252
254
mlirAttributeDump (mlirLLVMDINullTypeAttrGet (ctx ));
255
+
253
256
// CHECK: #llvm.di_basic_type<tag = DW_TAG_null, name = "foo", sizeInBits =
254
- // 64, encoding = DW_ATE_signed>
255
- MlirAttribute di_type = mlirLLVMDIBasicTypeAttrGet (ctx , 0 , foo , 64 , 0x5 );
257
+ // CHECK-SAME: 64, encoding = DW_ATE_signed>
258
+ MlirAttribute di_type =
259
+ mlirLLVMDIBasicTypeAttrGet (ctx , 0 , foo , 64 , LLVMDWARFSignedTypeEncoding );
256
260
mlirAttributeDump (di_type );
257
261
258
262
MlirAttribute file = mlirLLVMDIFileAttrGet (ctx , foo , bar );
@@ -261,102 +265,63 @@ static void testDebugInfoAttributes(MlirContext ctx) {
261
265
mlirAttributeDump (file );
262
266
263
267
MlirAttribute compile_unit =
264
- mlirLLVMDICompileUnitAttrGet (ctx , id , 0x1C , file , foo , false, 0x1 );
268
+ mlirLLVMDICompileUnitAttrGet (ctx , id , LLVMDWARFSourceLanguageC99 , file ,
269
+ foo , false, LLVMDWARFEmissionFull );
265
270
266
- // CHECK: #llvm.di_compile_unit<id = distinct[0]<"foo">, sourceLanguage =
267
- // DW_LANG_Rust, file = <"foo" in "bar">, producer = "foo", isOptimized =
268
- // false, emissionKind = Full>
271
+ // CHECK: #llvm.di_compile_unit<{{.*}}>
269
272
mlirAttributeDump (compile_unit );
270
273
271
274
MlirAttribute di_module = mlirLLVMDIModuleAttrGet (
272
275
ctx , file , compile_unit , foo ,
273
276
mlirStringAttrGet (ctx , mlirStringRefCreateFromCString ("" )), bar , foo , 1 ,
274
277
0 );
275
- // CHECK: #llvm.di_module<file = <"foo" in "bar">, scope =
276
- // #llvm.di_compile_unit<id = distinct[0]<"foo">, sourceLanguage =
277
- // DW_LANG_Rust, file = <"foo" in "bar">, producer = "foo", isOptimized =
278
- // false, emissionKind = Full>, name = "foo", configMacros = "", includePath =
279
- // "bar", apinotes = "foo", line = 1>
278
+ // CHECK: #llvm.di_module<{{.*}}>
280
279
mlirAttributeDump (di_module );
281
280
282
- // CHECK: #llvm.di_compile_unit<id = distinct[0]<"foo">, sourceLanguage =
283
- // DW_LANG_Rust, file = <"foo" in "bar">, producer = "foo", isOptimized =
284
- // false, emissionKind = Full>
281
+ // CHECK: #llvm.di_compile_unit<{{.*}}>
285
282
mlirAttributeDump (mlirLLVMDIModuleAttrGetScope (di_module ));
286
283
287
284
// CHECK: 1 : i32
288
285
mlirAttributeDump (mlirLLVMDIFlagsAttrGet (ctx , 0x1 ));
289
286
290
- // CHECK: #llvm.di_lexical_block<scope = #llvm.di_compile_unit<id =
291
- // distinct[0]<"foo">, sourceLanguage = DW_LANG_Rust, file = <"foo" in "bar">,
292
- // producer = "foo", isOptimized = false, emissionKind = Full>, file = <"foo"
293
- // in "bar">, line = 1, column = 2>
287
+ // CHECK: #llvm.di_lexical_block<{{.*}}>
294
288
mlirAttributeDump (
295
289
mlirLLVMDILexicalBlockAttrGet (ctx , compile_unit , file , 1 , 2 ));
296
290
297
- // CHECK: #llvm.di_lexical_block_file<scope = #llvm.di_compile_unit<id =
298
- // distinct[0]<"foo">, sourceLanguage = DW_LANG_Rust, file = <"foo" in "bar">,
299
- // producer = "foo", isOptimized = false, emissionKind = Full>, file = <"foo"
300
- // in "bar">, discriminator = 3>
291
+ // CHECK: #llvm.di_lexical_block_file<{{.*}}>
301
292
mlirAttributeDump (
302
293
mlirLLVMDILexicalBlockFileAttrGet (ctx , compile_unit , file , 3 ));
303
294
304
- // CHECK: #llvm.di_local_variable<scope = #llvm.di_compile_unit<id =
305
- // distinct[0]<"foo">, sourceLanguage = DW_LANG_Rust, file = <"foo" in "bar">,
306
- // producer = "foo", isOptimized = false, emissionKind = Full>, name = "foo",
307
- // file = <"foo" in "bar">, line = 1, alignInBits = 8, type =
308
- // #llvm.di_basic_type<tag = DW_TAG_null, name = "foo", sizeInBits = 64,
309
- // encoding = DW_ATE_signed>>
295
+ // CHECK: #llvm.di_local_variable<{{.*}}>
310
296
mlirAttributeDump (mlirLLVMDILocalVariableAttrGet (ctx , compile_unit , foo , file ,
311
297
1 , 0 , 8 , di_type ));
312
- // CHECK: #llvm.di_derived_type<tag = DW_TAG_null, name = "bar", baseType =
313
- // #llvm.di_basic_type<tag = DW_TAG_null, name = "foo", sizeInBits = 64,
314
- // encoding = DW_ATE_signed>, sizeInBits = 64, alignInBits = 8>
298
+ // CHECK: #llvm.di_derived_type<{{.*}}>
315
299
mlirAttributeDump (
316
300
mlirLLVMDIDerivedTypeAttrGet (ctx , 0 , bar , di_type , 64 , 8 , 0 ));
317
301
318
- // CHECK: #llvm.di_composite_type<tag = DW_TAG_null, name = "foo", file =
319
- // <"foo" in "bar">, line = 1, scope = #llvm.di_compile_unit<id =
320
- // distinct[0]<"foo">, sourceLanguage = DW_LANG_Rust, file = <"foo" in "bar">,
321
- // producer = "foo", isOptimized = false, emissionKind = Full>, baseType =
322
- // #llvm.di_basic_type<tag = DW_TAG_null, name = "foo", sizeInBits = 64,
323
- // encoding = DW_ATE_signed>, sizeInBits = 64, alignInBits = 8, elements =
324
- // #llvm.di_basic_type<tag = DW_TAG_null, name = "foo", sizeInBits = 64,
325
- // encoding = DW_ATE_signed>>
302
+ // CHECK: #llvm.di_composite_type<{{.*}}>
326
303
mlirAttributeDump (mlirLLVMDICompositeTypeAttrGet (
327
304
ctx , 0 , foo , file , 1 , compile_unit , di_type , 0 , 64 , 8 , 1 , & di_type ));
328
305
329
306
MlirAttribute subroutine_type =
330
307
mlirLLVMDISubroutineTypeAttrGet (ctx , 0x0 , 1 , & di_type );
331
308
332
- // CHECK: #llvm.di_subroutine_type<types = #llvm.di_basic_type<tag =
333
- // DW_TAG_null, name = "foo", sizeInBits = 64, encoding = DW_ATE_signed>>
309
+ // CHECK: #llvm.di_subroutine_type<{{.*}}>
334
310
mlirAttributeDump (subroutine_type );
335
311
336
312
MlirAttribute di_subprogram =
337
313
mlirLLVMDISubprogramAttrGet (ctx , id , compile_unit , compile_unit , foo , bar ,
338
314
file , 1 , 2 , 0 , subroutine_type );
339
- // CHECK: #llvm.di_subprogram<id = distinct[0]<"foo">, compileUnit = <id =
340
- // distinct[0]<"foo">, sourceLanguage = DW_LANG_Rust, file = <"foo" in "bar">,
341
- // producer = "foo", isOptimized = false, emissionKind = Full>, scope =
342
- // #llvm.di_compile_unit<id = distinct[0]<"foo">, sourceLanguage =
343
- // DW_LANG_Rust, file = <"foo" in "bar">, producer = "foo", isOptimized =
344
- // false, emissionKind = Full>, name = "foo", linkageName = "bar", file =
345
- // <"foo" in "bar">, line = 1, scopeLine = 2, subprogramFlags = , type =
346
- // <types = #llvm.di_basic_type<tag = DW_TAG_null, name = "foo", sizeInBits =
347
- // 64, encoding = DW_ATE_signed>>>
315
+ // CHECK: #llvm.di_subprogram<{{.*}}>
348
316
mlirAttributeDump (di_subprogram );
349
317
350
- // CHECK: #llvm.di_compile_unit<id = distinct[0]<"foo">, sourceLanguage =
351
- // DW_LANG_Rust, file = <"foo" in "bar">, producer = "foo", isOptimized =
352
- // false, emissionKind = Full>
318
+ // CHECK: #llvm.di_compile_unit<{{.*}}>
353
319
mlirAttributeDump (mlirLLVMDISubprogramAttrGetScope (di_subprogram ));
354
320
355
- // CHECK: #llvm.di_file<"foo" in "bar" >
321
+ // CHECK: #llvm.di_file<{{.*}} >
356
322
mlirAttributeDump (mlirLLVMDISubprogramAttrGetFile (di_subprogram ));
357
323
358
- // CHECK: #llvm.di_subroutine_type<types = #llvm.di_basic_type<tag =
359
- // DW_TAG_null, name = "foo", sizeInBits = 64, encoding = DW_ATE_signed>>
324
+ // CHECK: #llvm.di_subroutine_type<{{.*}}>
360
325
mlirAttributeDump (mlirLLVMDISubprogramAttrGetType (di_subprogram ));
361
326
362
327
MlirAttribute expression_elem =
0 commit comments