|
1 | 1 | // RUN: %target-swift-frontend -Xllvm -sil-full-demangle -suppress-warnings -profile-generate -profile-coverage-mapping -emit-sorted-sil -emit-sil -module-name coverage_deinit %s | %FileCheck %s |
2 | 2 | // RUN: %target-swift-frontend -profile-generate -profile-coverage-mapping -emit-ir %s |
3 | | -// REQUIRES: objc_interop |
4 | 3 |
|
5 | | -import Foundation |
| 4 | +func foo() {} |
6 | 5 |
|
7 | | -public class Derived: NSString { |
8 | | - // CHECK-LABEL: sil @$s15coverage_deinit7DerivedCfD |
9 | | - // CHECK: builtin "int_instrprof_increment" |
10 | | - // CHECK-NEXT: super_method {{.*}} : $Derived, #NSString.deinit!deallocator.foreign |
| 6 | +public class Foo { |
| 7 | + // CHECK-LABEL: sil @$s15coverage_deinit3FooCfd |
| 8 | + // CHECK: integer_literal $Builtin.Int64, 0 |
| 9 | + // CHECK: integer_literal $Builtin.Int32, 2 |
| 10 | + // CHECK: integer_literal $Builtin.Int32, 0 |
| 11 | + // CHECK-NEXT: builtin "int_instrprof_increment" |
| 12 | + // CHECK: function_ref @$sSb6randomSbyFZ |
| 13 | + // CHECK: cond_br |
| 14 | + // CHECK: integer_literal $Builtin.Int64, 0 |
| 15 | + // CHECK: integer_literal $Builtin.Int32, 2 |
| 16 | + // CHECK: integer_literal $Builtin.Int32, 1 |
| 17 | + // CHECK-NEXT: builtin "int_instrprof_increment" |
| 18 | + // CHECK-NEXT: // function_ref coverage_deinit.foo() -> () |
11 | 19 | deinit { |
| 20 | + if .random() { |
| 21 | + foo() |
| 22 | + } |
12 | 23 | } |
13 | 24 | } |
14 | 25 |
|
15 | | -// CHECK-LABEL: sil_coverage_map "{{.*}}coverage_deinit.swift" "$s15coverage_deinit7DerivedCfD" |
16 | | -// CHECK-NEXT: [[@LINE-5]]:10 -> [[@LINE-4]]:4 : 0 |
| 26 | +// CHECK-LABEL: sil_coverage_map "{{.*}}coverage_deinit.swift" "$s15coverage_deinit3FooCfd" |
| 27 | +// CHECK-NEXT: [[@LINE-8]]:10 -> [[@LINE-4]]:4 : 0 |
| 28 | +// CHECK-NEXT: [[@LINE-8]]:8 -> [[@LINE-8]]:17 : 0 |
| 29 | +// CHECK-NEXT: [[@LINE-9]]:18 -> [[@LINE-7]]:6 : 1 |
| 30 | +// CHECK-NEXT: [[@LINE-8]]:6 -> [[@LINE-7]]:4 : 0 |
0 commit comments