88#![ feature( inline_const) ]  
99#![ allow( unreachable_code) ]  
1010
11- use  std:: mem:: MaybeUninit ; 
1211use  std:: intrinsics:: { transmute,  transmute_unchecked} ; 
12+ use  std:: mem:: MaybeUninit ; 
1313
1414// Some of these need custom MIR to not get removed by MIR optimizations. 
1515use  std:: intrinsics:: mir:: * ; 
@@ -61,7 +61,7 @@ pub unsafe fn check_bigger_array(x: [u32; 3]) -> [u32; 7] {
6161#[ custom_mir( dialect = "runtime" ,  phase = "optimized" ) ]  
6262pub  unsafe  fn  check_to_uninhabited ( x :  u16 )  -> BigNever  { 
6363    // CHECK: call void @llvm.trap 
64-     mir ! { 
64+     mir !   { 
6565        { 
6666            RET  = CastTransmute ( x) ; 
6767            Return ( ) 
@@ -74,7 +74,7 @@ pub unsafe fn check_to_uninhabited(x: u16) -> BigNever {
7474#[ custom_mir( dialect = "runtime" ,  phase = "optimized" ) ]  
7575pub  unsafe  fn  check_from_uninhabited ( x :  BigNever )  -> u16  { 
7676    // CHECK: ret i16 poison 
77-     mir ! { 
77+     mir !   { 
7878        { 
7979            RET  = CastTransmute ( x) ; 
8080            Return ( ) 
@@ -89,9 +89,7 @@ pub unsafe fn check_intermediate_passthrough(x: u32) -> i32 {
8989    // CHECK: %[[TMP:.+]] = add i32 1, %x 
9090    // CHECK: %[[RET:.+]] = add i32 %[[TMP]], 1 
9191    // CHECK: ret i32 %[[RET]] 
92-     unsafe  { 
93-         transmute :: < u32 ,  i32 > ( 1  + x)  + 1 
94-     } 
92+     unsafe  {  transmute :: < u32 ,  i32 > ( 1  + x)  + 1  } 
9593} 
9694
9795// CHECK-LABEL: @check_nop_pair( 
@@ -101,9 +99,7 @@ pub unsafe fn check_nop_pair(x: (u8, i8)) -> (i8, u8) {
10199    // CHECK: %0 = insertvalue { i8, i8 } poison, i8 %x.0, 0 
102100    // CHECK: %1 = insertvalue { i8, i8 } %0, i8 %x.1, 1 
103101    // CHECK: ret { i8, i8 } %1 
104-     unsafe  { 
105-         transmute ( x) 
106-     } 
102+     unsafe  {  transmute ( x)  } 
107103} 
108104
109105// CHECK-LABEL: @check_to_newtype( 
@@ -135,9 +131,9 @@ pub unsafe fn check_aggregate_to_bool(x: Aggregate8) -> bool {
135131// CHECK-LABEL: @check_aggregate_from_bool( 
136132#[ no_mangle]  
137133pub  unsafe  fn  check_aggregate_from_bool ( x :  bool )  -> Aggregate8  { 
138-     // CHECK: %0  = alloca %Aggregate8, align 1 
134+     // CHECK: %_0  = alloca %Aggregate8, align 1 
139135    // CHECK: %[[BYTE:.+]] = zext i1 %x to i8 
140-     // CHECK: store i8 %[[BYTE]], ptr %0 , align 1 
136+     // CHECK: store i8 %[[BYTE]], ptr %_0 , align 1 
141137    transmute ( x) 
142138} 
143139
@@ -162,8 +158,8 @@ pub unsafe fn check_byte_from_bool(x: bool) -> u8 {
162158// CHECK-LABEL: @check_to_pair( 
163159#[ no_mangle]  
164160pub  unsafe  fn  check_to_pair ( x :  u64 )  -> Option < i32 >  { 
165-     // CHECK: %0  = alloca { i32, i32 }, align 4 
166-     // CHECK: store i64 %x, ptr %0 , align 4 
161+     // CHECK: %_0  = alloca { i32, i32 }, align 4 
162+     // CHECK: store i64 %x, ptr %_0 , align 4 
167163    transmute ( x) 
168164} 
169165
@@ -174,37 +170,37 @@ pub unsafe fn check_from_pair(x: Option<i32>) -> u64 {
174170    // immediates so we can write using the destination alloca's alignment. 
175171    const  {  assert ! ( std:: mem:: align_of:: <Option <i32 >>( )  == 4 )  } ; 
176172
177-     // CHECK: %0  = alloca i64, align 8 
178-     // CHECK: store i32 %x.0, ptr %1 , align 8 
179-     // CHECK: store i32 %x.1, ptr %2 , align 4 
180-     // CHECK: %3  = load i64, ptr %0 , align 8 
181-     // CHECK: ret i64 %3  
173+     // CHECK: %_0  = alloca i64, align 8 
174+     // CHECK: store i32 %x.0, ptr %0 , align 8 
175+     // CHECK: store i32 %x.1, ptr %1 , align 4 
176+     // CHECK: %2  = load i64, ptr %_0 , align 8 
177+     // CHECK: ret i64 %2  
182178    transmute ( x) 
183179} 
184180
185181// CHECK-LABEL: @check_to_float( 
186182#[ no_mangle]  
187183pub  unsafe  fn  check_to_float ( x :  u32 )  -> f32  { 
188184    // CHECK-NOT: alloca 
189-     // CHECK: %0  = bitcast i32 %x to float 
190-     // CHECK: ret float %0  
185+     // CHECK: %_0  = bitcast i32 %x to float 
186+     // CHECK: ret float %_0  
191187    transmute ( x) 
192188} 
193189
194190// CHECK-LABEL: @check_from_float( 
195191#[ no_mangle]  
196192pub  unsafe  fn  check_from_float ( x :  f32 )  -> u32  { 
197193    // CHECK-NOT: alloca 
198-     // CHECK: %0  = bitcast float %x to i32 
199-     // CHECK: ret i32 %0  
194+     // CHECK: %_0  = bitcast float %x to i32 
195+     // CHECK: ret i32 %_0  
200196    transmute ( x) 
201197} 
202198
203199// CHECK-LABEL: @check_to_bytes( 
204200#[ no_mangle]  
205201pub  unsafe  fn  check_to_bytes ( x :  u32 )  -> [ u8 ;  4 ]  { 
206-     // CHECK: %0  = alloca [4 x i8], align 1 
207-     // CHECK: store i32 %x, ptr %0 , align 1 
202+     // CHECK: %_0  = alloca [4 x i8], align 1 
203+     // CHECK: store i32 %x, ptr %_0 , align 1 
208204    transmute ( x) 
209205} 
210206
@@ -220,10 +216,10 @@ pub unsafe fn check_from_bytes(x: [u8; 4]) -> u32 {
220216// CHECK-LABEL: @check_to_aggregate( 
221217#[ no_mangle]  
222218pub  unsafe  fn  check_to_aggregate ( x :  u64 )  -> Aggregate64  { 
223-     // CHECK: %0  = alloca %Aggregate64, align 4 
224-     // CHECK: store i64 %x, ptr %0 , align 4 
225-     // CHECK: %1  = load i64, ptr %0 , align 4 
226-     // CHECK: ret i64 %1  
219+     // CHECK: %_0  = alloca %Aggregate64, align 4 
220+     // CHECK: store i64 %x, ptr %_0 , align 4 
221+     // CHECK: %0  = load i64, ptr %_0 , align 4 
222+     // CHECK: ret i64 %0  
227223    transmute ( x) 
228224} 
229225
@@ -240,7 +236,7 @@ pub unsafe fn check_from_aggregate(x: Aggregate64) -> u64 {
240236#[ no_mangle]  
241237pub  unsafe  fn  check_long_array_less_aligned ( x :  [ u64 ;  100 ] )  -> [ u16 ;  400 ]  { 
242238    // CHECK-NEXT: start 
243-     // CHECK-NEXT: call void @llvm.memcpy.p0.p0.i64(ptr align 2 %0 , ptr align 8 %x, i64 800, i1 false) 
239+     // CHECK-NEXT: call void @llvm.memcpy.p0.p0.i64(ptr align 2 %_0 , ptr align 8 %x, i64 800, i1 false) 
244240    // CHECK-NEXT: ret void 
245241    transmute ( x) 
246242} 
@@ -249,7 +245,7 @@ pub unsafe fn check_long_array_less_aligned(x: [u64; 100]) -> [u16; 400] {
249245#[ no_mangle]  
250246pub  unsafe  fn  check_long_array_more_aligned ( x :  [ u8 ;  100 ] )  -> [ u32 ;  25 ]  { 
251247    // CHECK-NEXT: start 
252-     // CHECK-NEXT: call void @llvm.memcpy.p0.p0.i64(ptr align 4 %0 , ptr align 1 %x, i64 100, i1 false) 
248+     // CHECK-NEXT: call void @llvm.memcpy.p0.p0.i64(ptr align 4 %_0 , ptr align 1 %x, i64 100, i1 false) 
253249    // CHECK-NEXT: ret void 
254250    transmute ( x) 
255251} 
@@ -268,8 +264,8 @@ pub unsafe fn check_pair_with_bool(x: (u8, bool)) -> (bool, i8) {
268264pub  unsafe  fn  check_float_to_pointer ( x :  f64 )  -> * const  ( )  { 
269265    // CHECK-NOT: alloca 
270266    // CHECK: %0 = bitcast double %x to i64 
271-     // CHECK: %1  = inttoptr i64 %0 to ptr 
272-     // CHECK: ret ptr %1  
267+     // CHECK: %_0  = inttoptr i64 %0 to ptr 
268+     // CHECK: ret ptr %_0  
273269    transmute ( x) 
274270} 
275271
@@ -278,8 +274,8 @@ pub unsafe fn check_float_to_pointer(x: f64) -> *const () {
278274pub  unsafe  fn  check_float_from_pointer ( x :  * const  ( ) )  -> f64  { 
279275    // CHECK-NOT: alloca 
280276    // CHECK: %0 = ptrtoint ptr %x to i64 
281-     // CHECK: %1  = bitcast i64 %0 to double 
282-     // CHECK: ret double %1  
277+     // CHECK: %_0  = bitcast i64 %0 to double 
278+     // CHECK: ret double %_0  
283279    transmute ( x) 
284280} 
285281
@@ -343,10 +339,10 @@ pub unsafe fn check_issue_110005(x: (usize, bool)) -> Option<Box<[u8]>> {
343339// CHECK-LABEL: @check_pair_to_dst_ref( 
344340#[ no_mangle]  
345341pub  unsafe  fn  check_pair_to_dst_ref < ' a > ( x :  ( usize ,  usize ) )  -> & ' a  [ u8 ]  { 
346-     // CHECK: %0 = inttoptr i64 %x.0 to ptr 
347-     // CHECK: %1  = insertvalue { ptr, i64 } poison, ptr %0, 0 
348-     // CHECK: %2  = insertvalue { ptr, i64 } %1 , i64 %x.1, 1 
349-     // CHECK: ret { ptr, i64 } %2  
342+     // CHECK: %_0. 0 = inttoptr i64 %x.0 to ptr 
343+     // CHECK: %0  = insertvalue { ptr, i64 } poison, ptr %_0. 0, 0 
344+     // CHECK: %1  = insertvalue { ptr, i64 } %0 , i64 %x.1, 1 
345+     // CHECK: ret { ptr, i64 } %1  
350346    transmute ( x) 
351347} 
352348
@@ -358,7 +354,7 @@ pub unsafe fn check_issue_109992(x: ()) -> [(); 1] {
358354
359355    // CHECK: start 
360356    // CHECK-NEXT: ret void 
361-     mir ! { 
357+     mir !   { 
362358        { 
363359            RET  = CastTransmute ( x) ; 
364360            Return ( ) 
@@ -390,10 +386,10 @@ pub struct HighAlignScalar(u8);
390386// CHECK-LABEL: @check_to_overalign( 
391387#[ no_mangle]  
392388pub  unsafe  fn  check_to_overalign ( x :  u64 )  -> HighAlignScalar  { 
393-     // CHECK: %0  = alloca %HighAlignScalar, align 8 
394-     // CHECK: store i64 %x, ptr %0 , align 8 
395-     // CHECK: %1  = load i64, ptr %0 , align 8 
396-     // CHECK: ret i64 %1  
389+     // CHECK: %_0  = alloca %HighAlignScalar, align 8 
390+     // CHECK: store i64 %x, ptr %_0 , align 8 
391+     // CHECK: %0  = load i64, ptr %_0 , align 8 
392+     // CHECK: ret i64 %0  
397393    transmute ( x) 
398394} 
399395
0 commit comments