|
5 | 5 |
|
6 | 6 | import FunctionsObjC |
7 | 7 |
|
8 | | -// CHECK: define linkonce_odr noundef ptr @_ZNK7Derived36__synthesizedBaseCall_virtual_methodEv(ptr noundef nonnull align {{4|8}} dereferenceable(12) %[[THIS:.*]]) |
| 8 | +// CHECK: define linkonce_odr noundef ptr @_ZNK7Derived36__synthesizedBaseCall_virtual_methodEv(ptr noundef nonnull align {{4|8}} dereferenceable({{8|12}}) %[[THIS:.*]]) |
9 | 9 | // CHECK: %[[THIS_ADDR:.*]] = alloca ptr, |
10 | 10 | // CHECK: store ptr %[[THIS]], ptr %[[THIS_ADDR]], |
11 | 11 | // CHECK: %[[THIS1:.*]] = load ptr, ptr %[[THIS_ADDR]], |
12 | 12 | // CHECK: %[[VTABLE:.*]] = load ptr, ptr %[[THIS1]], |
13 | 13 | // CHECK: %[[VFN:.*]] = getelementptr inbounds ptr, ptr %[[VTABLE]], i64 0 |
14 | 14 | // CHECK: %[[V0:.*]] = load ptr, ptr %[[VFN]], |
15 | | -// CHECK: %[[CALL:.*]] = call noundef ptr %[[V0]](ptr noundef nonnull align {{4|8}} dereferenceable(12) %[[THIS1]]) |
| 15 | +// CHECK: %[[CALL:.*]] = call noundef ptr %[[V0]](ptr noundef nonnull align {{4|8}} dereferenceable({{8|12}}) %[[THIS1]]) |
16 | 16 | // CHECK: ret ptr %[[CALL]] |
17 | 17 |
|
18 | | -// CHECK: define linkonce_odr noundef ptr @_ZNK7Derived40__synthesizedBaseCall_non_virtual_methodEv(ptr noundef nonnull align {{4|8}} dereferenceable(12) %[[THIS:.*]]) |
| 18 | +// CHECK: define linkonce_odr noundef ptr @_ZNK7Derived40__synthesizedBaseCall_non_virtual_methodEv(ptr noundef nonnull align {{4|8}} dereferenceable({{8|12}}) %[[THIS:.*]]) |
19 | 19 | // CHECK: %[[THIS_ADDR:.*]] = alloca ptr, |
20 | 20 | // CHECK: store ptr %[[THIS]], ptr %[[THIS_ADDR]], |
21 | 21 | // CHECK: %[[THIS1:.*]] = load ptr, ptr %[[THIS_ADDR]], |
22 | | -// CHECK: %[[CALL:.*]] = call noundef ptr @_ZNK4Base18non_virtual_methodEv(ptr noundef nonnull align {{4|8}} dereferenceable(12) %[[THIS1]]) |
| 22 | +// CHECK: %[[CALL:.*]] = call noundef ptr @_ZNK4Base18non_virtual_methodEv(ptr noundef nonnull align {{4|8}} dereferenceable({{8|12}}) %[[THIS1]]) |
23 | 23 | // CHECK: ret ptr %[[CALL]] |
24 | 24 |
|
25 | 25 | func testBaseMethodCall() -> C { |
|
0 commit comments