@@ -21,62 +21,62 @@ pub struct UnsafeInner {
21
21
_field : std:: cell:: UnsafeCell < i16 > ,
22
22
}
23
23
24
- // CHECK: zeroext i1 @boolean(i1 zeroext)
24
+ // CHECK: zeroext i1 @boolean(i1 zeroext %x )
25
25
#[ no_mangle]
26
26
pub fn boolean ( x : bool ) -> bool {
27
27
x
28
28
}
29
29
30
- // CHECK: @readonly_borrow(i32* noalias readonly dereferenceable(4))
30
+ // CHECK: @readonly_borrow(i32* noalias readonly dereferenceable(4) %arg0 )
31
31
// FIXME #25759 This should also have `nocapture`
32
32
#[ no_mangle]
33
33
pub fn readonly_borrow ( _: & i32 ) {
34
34
}
35
35
36
- // CHECK: @static_borrow(i32* noalias readonly dereferenceable(4))
36
+ // CHECK: @static_borrow(i32* noalias readonly dereferenceable(4) %arg0 )
37
37
// static borrow may be captured
38
38
#[ no_mangle]
39
39
pub fn static_borrow ( _: & ' static i32 ) {
40
40
}
41
41
42
- // CHECK: @named_borrow(i32* noalias readonly dereferenceable(4))
42
+ // CHECK: @named_borrow(i32* noalias readonly dereferenceable(4) %arg0 )
43
43
// borrow with named lifetime may be captured
44
44
#[ no_mangle]
45
45
pub fn named_borrow < ' r > ( _: & ' r i32 ) {
46
46
}
47
47
48
- // CHECK: @unsafe_borrow(%UnsafeInner* dereferenceable(2))
48
+ // CHECK: @unsafe_borrow(%UnsafeInner* dereferenceable(2) %arg0 )
49
49
// unsafe interior means this isn't actually readonly and there may be aliases ...
50
50
#[ no_mangle]
51
51
pub fn unsafe_borrow ( _: & UnsafeInner ) {
52
52
}
53
53
54
- // CHECK: @mutable_unsafe_borrow(%UnsafeInner* dereferenceable(2))
54
+ // CHECK: @mutable_unsafe_borrow(%UnsafeInner* dereferenceable(2) %arg0 )
55
55
// ... unless this is a mutable borrow, those never alias
56
56
// ... except that there's this LLVM bug that forces us to not use noalias, see #29485
57
57
#[ no_mangle]
58
58
pub fn mutable_unsafe_borrow ( _: & mut UnsafeInner ) {
59
59
}
60
60
61
- // CHECK: @mutable_borrow(i32* dereferenceable(4))
61
+ // CHECK: @mutable_borrow(i32* dereferenceable(4) %arg0 )
62
62
// FIXME #25759 This should also have `nocapture`
63
63
// ... there's this LLVM bug that forces us to not use noalias, see #29485
64
64
#[ no_mangle]
65
65
pub fn mutable_borrow ( _: & mut i32 ) {
66
66
}
67
67
68
- // CHECK: @indirect_struct(%S* noalias nocapture dereferenceable(32))
68
+ // CHECK: @indirect_struct(%S* noalias nocapture dereferenceable(32) %arg0 )
69
69
#[ no_mangle]
70
70
pub fn indirect_struct ( _: S ) {
71
71
}
72
72
73
- // CHECK: @borrowed_struct(%S* noalias readonly dereferenceable(32))
73
+ // CHECK: @borrowed_struct(%S* noalias readonly dereferenceable(32) %arg0 )
74
74
// FIXME #25759 This should also have `nocapture`
75
75
#[ no_mangle]
76
76
pub fn borrowed_struct ( _: & S ) {
77
77
}
78
78
79
- // CHECK: noalias dereferenceable(4) i32* @_box(i32* noalias dereferenceable(4))
79
+ // CHECK: noalias dereferenceable(4) i32* @_box(i32* noalias dereferenceable(4) %x )
80
80
#[ no_mangle]
81
81
pub fn _box ( x : Box < i32 > ) -> Box < i32 > {
82
82
x
@@ -91,31 +91,31 @@ pub fn struct_return() -> S {
91
91
}
92
92
93
93
// Hack to get the correct size for the length part in slices
94
- // CHECK: @helper([[USIZE:i[0-9]+]])
94
+ // CHECK: @helper([[USIZE:i[0-9]+]] %arg0 )
95
95
#[ no_mangle]
96
96
fn helper ( _: usize ) {
97
97
}
98
98
99
- // CHECK: @slice(i8* noalias nonnull readonly, [[USIZE]])
99
+ // CHECK: @slice(i8* noalias nonnull readonly %arg0.ptr , [[USIZE]] %arg0.meta )
100
100
// FIXME #25759 This should also have `nocapture`
101
101
#[ no_mangle]
102
102
fn slice ( _: & [ u8 ] ) {
103
103
}
104
104
105
- // CHECK: @mutable_slice(i8* nonnull, [[USIZE]])
105
+ // CHECK: @mutable_slice(i8* nonnull %arg0.ptr , [[USIZE]] %arg0.meta )
106
106
// FIXME #25759 This should also have `nocapture`
107
107
// ... there's this LLVM bug that forces us to not use noalias, see #29485
108
108
#[ no_mangle]
109
109
fn mutable_slice ( _: & mut [ u8 ] ) {
110
110
}
111
111
112
- // CHECK: @unsafe_slice(%UnsafeInner* nonnull, [[USIZE]])
112
+ // CHECK: @unsafe_slice(%UnsafeInner* nonnull %arg0.ptr , [[USIZE]] %arg0.meta )
113
113
// unsafe interior means this isn't actually readonly and there may be aliases ...
114
114
#[ no_mangle]
115
115
pub fn unsafe_slice ( _: & [ UnsafeInner ] ) {
116
116
}
117
117
118
- // CHECK: @str(i8* noalias nonnull readonly, [[USIZE]])
118
+ // CHECK: @str(i8* noalias nonnull readonly %arg0.ptr , [[USIZE]] %arg0.meta )
119
119
// FIXME #25759 This should also have `nocapture`
120
120
#[ no_mangle]
121
121
fn str ( _: & [ u8 ] ) {
@@ -132,7 +132,7 @@ fn trait_borrow(_: &Drop) {
132
132
fn trait_box ( _: Box < Drop > ) {
133
133
}
134
134
135
- // CHECK: { i16*, [[USIZE]] } @return_slice(i16* noalias nonnull readonly, [[USIZE]])
135
+ // CHECK: { i16*, [[USIZE]] } @return_slice(i16* noalias nonnull readonly %x.ptr , [[USIZE]] %x.meta )
136
136
#[ no_mangle]
137
137
fn return_slice ( x : & [ u16 ] ) -> & [ u16 ] {
138
138
x
0 commit comments