@@ -208,11 +208,11 @@ pub fn check_intrinsic_type(
208
208
Ty :: new_tup ( tcx, & [ param ( 0 ) , tcx. types . bool ] ) ,
209
209
) ,
210
210
"load" => ( 1 , vec ! [ Ty :: new_imm_ptr( tcx, param( 0 ) ) ] , param ( 0 ) ) ,
211
- "store" => ( 1 , vec ! [ Ty :: new_mut_ptr( tcx, param( 0 ) ) , param( 0 ) ] , Ty :: new_unit ( tcx) ) ,
211
+ "store" => ( 1 , vec ! [ Ty :: new_mut_ptr( tcx, param( 0 ) ) , param( 0 ) ] , tcx. types . unit ) ,
212
212
213
213
"xchg" | "xadd" | "xsub" | "and" | "nand" | "or" | "xor" | "max" | "min" | "umax"
214
214
| "umin" => ( 1 , vec ! [ Ty :: new_mut_ptr( tcx, param( 0 ) ) , param( 0 ) ] , param ( 0 ) ) ,
215
- "fence" | "singlethreadfence" => ( 0 , Vec :: new ( ) , Ty :: new_unit ( tcx) ) ,
215
+ "fence" | "singlethreadfence" => ( 0 , Vec :: new ( ) , tcx. types . unit ) ,
216
216
op => {
217
217
tcx. dcx ( ) . emit_err ( UnrecognizedAtomicOperation { span, op } ) ;
218
218
return ;
@@ -224,7 +224,7 @@ pub fn check_intrinsic_type(
224
224
let ( n_tps, n_cts, inputs, output) = match intrinsic_name {
225
225
sym:: abort => ( 0 , 0 , vec ! [ ] , tcx. types . never ) ,
226
226
sym:: unreachable => ( 0 , 0 , vec ! [ ] , tcx. types . never ) ,
227
- sym:: breakpoint => ( 0 , 0 , vec ! [ ] , Ty :: new_unit ( tcx) ) ,
227
+ sym:: breakpoint => ( 0 , 0 , vec ! [ ] , tcx. types . unit ) ,
228
228
sym:: size_of | sym:: pref_align_of | sym:: min_align_of | sym:: variant_count => {
229
229
( 1 , 0 , vec ! [ ] , tcx. types . usize )
230
230
}
@@ -235,14 +235,14 @@ pub fn check_intrinsic_type(
235
235
sym:: caller_location => ( 0 , 0 , vec ! [ ] , tcx. caller_location_ty ( ) ) ,
236
236
sym:: assert_inhabited
237
237
| sym:: assert_zero_valid
238
- | sym:: assert_mem_uninitialized_valid => ( 1 , 0 , vec ! [ ] , Ty :: new_unit ( tcx) ) ,
239
- sym:: forget => ( 1 , 0 , vec ! [ param( 0 ) ] , Ty :: new_unit ( tcx) ) ,
238
+ | sym:: assert_mem_uninitialized_valid => ( 1 , 0 , vec ! [ ] , tcx. types . unit ) ,
239
+ sym:: forget => ( 1 , 0 , vec ! [ param( 0 ) ] , tcx. types . unit ) ,
240
240
sym:: transmute | sym:: transmute_unchecked => ( 2 , 0 , vec ! [ param( 0 ) ] , param ( 1 ) ) ,
241
241
sym:: prefetch_read_data
242
242
| sym:: prefetch_write_data
243
243
| sym:: prefetch_read_instruction
244
244
| sym:: prefetch_write_instruction => {
245
- ( 1 , 0 , vec ! [ Ty :: new_imm_ptr( tcx, param( 0 ) ) , tcx. types. i32 ] , Ty :: new_unit ( tcx) )
245
+ ( 1 , 0 , vec ! [ Ty :: new_imm_ptr( tcx, param( 0 ) ) , tcx. types. i32 ] , tcx. types . unit )
246
246
}
247
247
sym:: needs_drop => ( 1 , 0 , vec ! [ ] , tcx. types . bool ) ,
248
248
@@ -270,7 +270,7 @@ pub fn check_intrinsic_type(
270
270
Ty :: new_mut_ptr( tcx, param( 0 ) ) ,
271
271
tcx. types. usize ,
272
272
] ,
273
- Ty :: new_unit ( tcx) ,
273
+ tcx. types . unit ,
274
274
) ,
275
275
sym:: volatile_copy_memory | sym:: volatile_copy_nonoverlapping_memory => (
276
276
1 ,
@@ -280,7 +280,7 @@ pub fn check_intrinsic_type(
280
280
Ty :: new_imm_ptr( tcx, param( 0 ) ) ,
281
281
tcx. types. usize ,
282
282
] ,
283
- Ty :: new_unit ( tcx) ,
283
+ tcx. types . unit ,
284
284
) ,
285
285
sym:: compare_bytes => {
286
286
let byte_ptr = Ty :: new_imm_ptr ( tcx, tcx. types . u8 ) ;
@@ -290,7 +290,7 @@ pub fn check_intrinsic_type(
290
290
1 ,
291
291
0 ,
292
292
vec ! [ Ty :: new_mut_ptr( tcx, param( 0 ) ) , tcx. types. u8 , tcx. types. usize ] ,
293
- Ty :: new_unit ( tcx) ,
293
+ tcx. types . unit ,
294
294
) ,
295
295
296
296
sym:: sqrtf16 => ( 0 , 0 , vec ! [ tcx. types. f16] , tcx. types . f16 ) ,
@@ -409,7 +409,7 @@ pub fn check_intrinsic_type(
409
409
( 1 , 0 , vec ! [ Ty :: new_imm_ptr( tcx, param( 0 ) ) ] , param ( 0 ) )
410
410
}
411
411
sym:: volatile_store | sym:: unaligned_volatile_store => {
412
- ( 1 , 0 , vec ! [ Ty :: new_mut_ptr( tcx, param( 0 ) ) , param( 0 ) ] , Ty :: new_unit ( tcx) )
412
+ ( 1 , 0 , vec ! [ Ty :: new_mut_ptr( tcx, param( 0 ) ) , param( 0 ) ] , tcx. types . unit )
413
413
}
414
414
415
415
sym:: ctpop | sym:: ctlz | sym:: ctlz_nonzero | sym:: cttz | sym:: cttz_nonzero => {
@@ -440,7 +440,7 @@ pub fn check_intrinsic_type(
440
440
0 ,
441
441
1 ,
442
442
vec ! [ Ty :: new_mut_ptr( tcx, tcx. types. u8 ) , tcx. types. usize , tcx. types. usize ] ,
443
- Ty :: new_unit ( tcx) ,
443
+ tcx. types . unit ,
444
444
) ,
445
445
446
446
sym:: ptr_offset_from => (
@@ -477,16 +477,16 @@ pub fn check_intrinsic_type(
477
477
| sym:: frem_algebraic => ( 1 , 0 , vec ! [ param( 0 ) , param( 0 ) ] , param ( 0 ) ) ,
478
478
sym:: float_to_int_unchecked => ( 2 , 0 , vec ! [ param( 0 ) ] , param ( 1 ) ) ,
479
479
480
- sym:: assume => ( 0 , 1 , vec ! [ tcx. types. bool ] , Ty :: new_unit ( tcx) ) ,
480
+ sym:: assume => ( 0 , 1 , vec ! [ tcx. types. bool ] , tcx. types . unit ) ,
481
481
sym:: likely => ( 0 , 1 , vec ! [ tcx. types. bool ] , tcx. types . bool ) ,
482
482
sym:: unlikely => ( 0 , 1 , vec ! [ tcx. types. bool ] , tcx. types . bool ) ,
483
483
484
484
sym:: read_via_copy => ( 1 , 0 , vec ! [ Ty :: new_imm_ptr( tcx, param( 0 ) ) ] , param ( 0 ) ) ,
485
485
sym:: write_via_move => {
486
- ( 1 , 0 , vec ! [ Ty :: new_mut_ptr( tcx, param( 0 ) ) , param( 0 ) ] , Ty :: new_unit ( tcx) )
486
+ ( 1 , 0 , vec ! [ Ty :: new_mut_ptr( tcx, param( 0 ) ) , param( 0 ) ] , tcx. types . unit )
487
487
}
488
488
489
- sym:: typed_swap => ( 1 , 1 , vec ! [ Ty :: new_mut_ptr( tcx, param( 0 ) ) ; 2 ] , Ty :: new_unit ( tcx) ) ,
489
+ sym:: typed_swap => ( 1 , 1 , vec ! [ Ty :: new_mut_ptr( tcx, param( 0 ) ) ; 2 ] , tcx. types . unit ) ,
490
490
491
491
sym:: discriminant_value => {
492
492
let assoc_items = tcx. associated_item_def_ids (
@@ -511,14 +511,14 @@ pub fn check_intrinsic_type(
511
511
let mut_u8 = Ty :: new_mut_ptr ( tcx, tcx. types . u8 ) ;
512
512
let try_fn_ty = ty:: Binder :: dummy ( tcx. mk_fn_sig (
513
513
[ mut_u8] ,
514
- Ty :: new_unit ( tcx) ,
514
+ tcx. types . unit ,
515
515
false ,
516
516
hir:: Unsafety :: Normal ,
517
517
Abi :: Rust ,
518
518
) ) ;
519
519
let catch_fn_ty = ty:: Binder :: dummy ( tcx. mk_fn_sig (
520
520
[ mut_u8, mut_u8] ,
521
- Ty :: new_unit ( tcx) ,
521
+ tcx. types . unit ,
522
522
false ,
523
523
hir:: Unsafety :: Normal ,
524
524
Abi :: Rust ,
@@ -532,14 +532,14 @@ pub fn check_intrinsic_type(
532
532
}
533
533
534
534
sym:: va_start | sym:: va_end => match mk_va_list_ty ( hir:: Mutability :: Mut ) {
535
- Some ( ( va_list_ref_ty, _) ) => ( 0 , 0 , vec ! [ va_list_ref_ty] , Ty :: new_unit ( tcx) ) ,
535
+ Some ( ( va_list_ref_ty, _) ) => ( 0 , 0 , vec ! [ va_list_ref_ty] , tcx. types . unit ) ,
536
536
None => bug ! ( "`va_list` lang item needed for C-variadic intrinsics" ) ,
537
537
} ,
538
538
539
539
sym:: va_copy => match mk_va_list_ty ( hir:: Mutability :: Not ) {
540
540
Some ( ( va_list_ref_ty, va_list_ty) ) => {
541
541
let va_list_ptr_ty = Ty :: new_mut_ptr ( tcx, va_list_ty) ;
542
- ( 0 , 0 , vec ! [ va_list_ptr_ty, va_list_ref_ty] , Ty :: new_unit ( tcx) )
542
+ ( 0 , 0 , vec ! [ va_list_ptr_ty, va_list_ref_ty] , tcx. types . unit )
543
543
}
544
544
None => bug ! ( "`va_list` lang item needed for C-variadic intrinsics" ) ,
545
545
} ,
@@ -550,7 +550,7 @@ pub fn check_intrinsic_type(
550
550
} ,
551
551
552
552
sym:: nontemporal_store => {
553
- ( 1 , 0 , vec ! [ Ty :: new_mut_ptr( tcx, param( 0 ) ) , param( 0 ) ] , Ty :: new_unit ( tcx) )
553
+ ( 1 , 0 , vec ! [ Ty :: new_mut_ptr( tcx, param( 0 ) ) , param( 0 ) ] , tcx. types . unit )
554
554
}
555
555
556
556
sym:: raw_eq => {
@@ -570,7 +570,7 @@ pub fn check_intrinsic_type(
570
570
sym:: const_eval_select => ( 4 , 1 , vec ! [ param( 0 ) , param( 1 ) , param( 2 ) ] , param ( 3 ) ) ,
571
571
572
572
sym:: vtable_size | sym:: vtable_align => {
573
- ( 0 , 0 , vec ! [ Ty :: new_imm_ptr( tcx, Ty :: new_unit ( tcx) ) ] , tcx. types . usize )
573
+ ( 0 , 0 , vec ! [ Ty :: new_imm_ptr( tcx, tcx. types . unit ) ] , tcx. types . usize )
574
574
}
575
575
576
576
// This type check is not particularly useful, but the `where` bounds
@@ -623,8 +623,8 @@ pub fn check_intrinsic_type(
623
623
sym:: simd_fma => ( 1 , 0 , vec ! [ param( 0 ) , param( 0 ) , param( 0 ) ] , param ( 0 ) ) ,
624
624
sym:: simd_gather => ( 3 , 0 , vec ! [ param( 0 ) , param( 1 ) , param( 2 ) ] , param ( 0 ) ) ,
625
625
sym:: simd_masked_load => ( 3 , 0 , vec ! [ param( 0 ) , param( 1 ) , param( 2 ) ] , param ( 2 ) ) ,
626
- sym:: simd_masked_store => ( 3 , 0 , vec ! [ param( 0 ) , param( 1 ) , param( 2 ) ] , Ty :: new_unit ( tcx) ) ,
627
- sym:: simd_scatter => ( 3 , 0 , vec ! [ param( 0 ) , param( 1 ) , param( 2 ) ] , Ty :: new_unit ( tcx) ) ,
626
+ sym:: simd_masked_store => ( 3 , 0 , vec ! [ param( 0 ) , param( 1 ) , param( 2 ) ] , tcx. types . unit ) ,
627
+ sym:: simd_scatter => ( 3 , 0 , vec ! [ param( 0 ) , param( 1 ) , param( 2 ) ] , tcx. types . unit ) ,
628
628
sym:: simd_insert => ( 2 , 0 , vec ! [ param( 0 ) , tcx. types. u32 , param( 1 ) ] , param ( 0 ) ) ,
629
629
sym:: simd_extract => ( 2 , 0 , vec ! [ param( 0 ) , tcx. types. u32 ] , param ( 1 ) ) ,
630
630
sym:: simd_cast
0 commit comments