@@ -56,8 +56,7 @@ define void @unhandled_intrinsic(ptr %arg1, ptr %arg2) {
56
56
57
57
; // -----
58
58
59
- ; CHECK: import-failure.ll
60
- ; CHECK-SAME: warning: unhandled metadata: !0 = !{!"unknown metadata"} on br i1 %arg1, label %bb1, label %bb2, !prof !0
59
+ ; CHECK: warning: unhandled metadata: !0 = !{!"unknown metadata"} on br i1 %arg1, label %bb1, label %bb2, !prof !0
61
60
define i64 @unhandled_metadata (i1 %arg1 , i64 %arg2 ) {
62
61
entry:
63
62
br i1 %arg1 , label %bb1 , label %bb2 , !prof !0
71
70
72
71
; // -----
73
72
74
- ; CHECK: import-failure.ll
75
- ; CHECK-SAME: warning: unhandled function metadata: !0 = !{!"unknown metadata"} on define void @unhandled_func_metadata(i1 %arg1, i64 %arg2) !prof !0
73
+ ; CHECK: warning: unhandled function metadata: !0 = !{!"unknown metadata"} on define void @unhandled_func_metadata(i1 %arg1, i64 %arg2) !prof !0
76
74
define void @unhandled_func_metadata (i1 %arg1 , i64 %arg2 ) !prof !0 {
77
75
ret void
78
76
}
@@ -439,3 +437,126 @@ end:
439
437
!0 = distinct !{!0 , !1 , !2 }
440
438
!1 = !{!"llvm.loop.disable_nonforced" }
441
439
!2 = !{!"llvm.loop.typo" }
440
+
441
+ ; // -----
442
+
443
+ ; CHECK: import-failure.ll
444
+ ; CHECK-SAME: warning: expected non-empty profiling metadata node
445
+ ; CHECK: warning: unhandled metadata: !0 = !{}
446
+ define void @cond_br (i1 %arg ) {
447
+ entry:
448
+ br i1 %arg , label %bb1 , label %bb2 , !prof !0
449
+ bb1:
450
+ ret void
451
+ bb2:
452
+ ret void
453
+ }
454
+
455
+ !0 = !{}
456
+
457
+ ; // -----
458
+
459
+ ; CHECK: import-failure.ll
460
+ ; CHECK-SAME: warning: expected profiling metadata node to have a string identifier
461
+ ; CHECK: import-failure.ll:{{.*}} warning: unhandled metadata: !0 = !{i32 64}
462
+ define void @cond_br (i1 %arg ) {
463
+ entry:
464
+ br i1 %arg , label %bb1 , label %bb2 , !prof !0
465
+ bb1:
466
+ ret void
467
+ bb2:
468
+ ret void
469
+ }
470
+
471
+ !0 = !{i32 64 }
472
+
473
+ ; // -----
474
+
475
+ ; CHECK: import-failure.ll
476
+ ; CHECK-SAME: warning: expected function_entry_count to hold a single i64 value
477
+ ; CHECK: warning: unhandled function metadata: !0 = !{!"function_entry_count"}
478
+ define void @cond_br (i1 %arg ) !prof !0 {
479
+ entry:
480
+ br i1 %arg , label %bb1 , label %bb2
481
+ bb1:
482
+ ret void
483
+ bb2:
484
+ ret void
485
+ }
486
+
487
+ !0 = !{!"function_entry_count" }
488
+
489
+ ; // -----
490
+
491
+ ; CHECK: import-failure.ll
492
+ ; CHECK-SAME: warning: expected function_entry_count to hold a single i64 value
493
+ ; CHECK: warning: unhandled function metadata: !0 = !{!"function_entry_count", !"string"}
494
+ define void @cond_br (i1 %arg ) !prof !0 {
495
+ entry:
496
+ br i1 %arg , label %bb1 , label %bb2
497
+ bb1:
498
+ ret void
499
+ bb2:
500
+ ret void
501
+ }
502
+
503
+ !0 = !{!"function_entry_count" , !"string" }
504
+
505
+ ; // -----
506
+
507
+ ; CHECK: import-failure.ll
508
+ ; CHECK-SAME: warning: expected function_entry_count to be attached to a function
509
+ ; CHECK: warning: unhandled metadata: !0 = !{!"function_entry_count", i64 42}
510
+ define void @cond_br (i1 %arg ) {
511
+ entry:
512
+ br i1 %arg , label %bb1 , label %bb2 , !prof !0
513
+ bb1:
514
+ ret void
515
+ bb2:
516
+ ret void
517
+ }
518
+
519
+ !0 = !{!"function_entry_count" , i64 42 }
520
+
521
+ ; // -----
522
+
523
+ ; CHECK: import-failure.ll
524
+ ; CHECK-SAME: warning: unknown profiling metadata node unknown_prof_type
525
+ ; CHECK: warning: unhandled metadata: !0 = !{!"unknown_prof_type"}
526
+ define void @cond_br (i1 %arg ) {
527
+ entry:
528
+ br i1 %arg , label %bb1 , label %bb2 , !prof !0
529
+ bb1:
530
+ ret void
531
+ bb2:
532
+ ret void
533
+ }
534
+
535
+ !0 = !{!"unknown_prof_type" }
536
+
537
+ ; // -----
538
+
539
+ ; CHECK: import-failure.ll
540
+ ; CHECK-SAME: warning: expected branch weights to be integers
541
+ ; CHECK: warning: unhandled metadata: !0 = !{!"branch_weights", !"foo"}
542
+ define void @cond_br (i1 %arg ) {
543
+ entry:
544
+ br i1 %arg , label %bb1 , label %bb2 , !prof !0
545
+ bb1:
546
+ ret void
547
+ bb2:
548
+ ret void
549
+ }
550
+
551
+ !0 = !{!"branch_weights" , !"foo" }
552
+
553
+ ; // -----
554
+
555
+ ; CHECK: import-failure.ll
556
+ ; CHECK-SAME: warning: llvm.func does not support branch weights
557
+ ; CHECK: import-failure.ll:{{.*}} warning: unhandled function metadata: !0 = !{!"branch_weights", i32 64}
558
+ define void @cond_br (i1 %arg ) !prof !0 {
559
+ ret void
560
+ }
561
+
562
+ !0 = !{!"branch_weights" , i32 64 }
0 commit comments