@@ -76,7 +76,6 @@ struct PerDefTables<'tcx> {
76
76
inherent_impls : PerDefTable < Lazy < [ DefIndex ] > > ,
77
77
variances : PerDefTable < Lazy < [ ty:: Variance ] > > ,
78
78
generics : PerDefTable < Lazy < ty:: Generics > > ,
79
- predicates : PerDefTable < Lazy < ty:: GenericPredicates < ' tcx > > > ,
80
79
predicates_defined_on : PerDefTable < Lazy < ty:: GenericPredicates < ' tcx > > > ,
81
80
super_predicates : PerDefTable < Lazy < ty:: GenericPredicates < ' tcx > > > ,
82
81
@@ -524,7 +523,6 @@ impl<'tcx> EncodeContext<'tcx> {
524
523
inherent_impls : self . per_def . inherent_impls . encode ( & mut self . opaque ) ,
525
524
variances : self . per_def . variances . encode ( & mut self . opaque ) ,
526
525
generics : self . per_def . generics . encode ( & mut self . opaque ) ,
527
- predicates : self . per_def . predicates . encode ( & mut self . opaque ) ,
528
526
predicates_defined_on : self . per_def . predicates_defined_on . encode ( & mut self . opaque ) ,
529
527
super_predicates : self . per_def . super_predicates . encode ( & mut self . opaque ) ,
530
528
@@ -676,7 +674,7 @@ impl EncodeContext<'tcx> {
676
674
self . encode_variances_of ( def_id) ;
677
675
}
678
676
self . encode_generics ( def_id) ;
679
- self . encode_predicates ( def_id) ;
677
+ self . encode_predicates_defined_on ( def_id) ;
680
678
self . encode_optimized_mir ( def_id) ;
681
679
self . encode_promoted_mir ( def_id) ;
682
680
}
@@ -719,7 +717,7 @@ impl EncodeContext<'tcx> {
719
717
self . encode_variances_of ( def_id) ;
720
718
}
721
719
self . encode_generics ( def_id) ;
722
- self . encode_predicates ( def_id) ;
720
+ self . encode_predicates_defined_on ( def_id) ;
723
721
self . encode_optimized_mir ( def_id) ;
724
722
self . encode_promoted_mir ( def_id) ;
725
723
}
@@ -777,7 +775,7 @@ impl EncodeContext<'tcx> {
777
775
self . encode_deprecation ( def_id) ;
778
776
self . encode_item_type ( def_id) ;
779
777
self . encode_generics ( def_id) ;
780
- self . encode_predicates ( def_id) ;
778
+ self . encode_predicates_defined_on ( def_id) ;
781
779
}
782
780
783
781
fn encode_struct_ctor ( & mut self , adt_def_id : DefId , def_id : DefId ) {
@@ -820,7 +818,7 @@ impl EncodeContext<'tcx> {
820
818
self . encode_variances_of ( def_id) ;
821
819
}
822
820
self . encode_generics ( def_id) ;
823
- self . encode_predicates ( def_id) ;
821
+ self . encode_predicates_defined_on ( def_id) ;
824
822
self . encode_optimized_mir ( def_id) ;
825
823
self . encode_promoted_mir ( def_id) ;
826
824
}
@@ -830,11 +828,6 @@ impl EncodeContext<'tcx> {
830
828
record ! ( self . per_def. generics[ def_id] <- self . tcx. generics_of( def_id) ) ;
831
829
}
832
830
833
- fn encode_predicates ( & mut self , def_id : DefId ) {
834
- debug ! ( "EncodeContext::encode_predicates({:?})" , def_id) ;
835
- record ! ( self . per_def. predicates[ def_id] <- self . tcx. predicates_of( def_id) ) ;
836
- }
837
-
838
831
fn encode_predicates_defined_on ( & mut self , def_id : DefId ) {
839
832
debug ! ( "EncodeContext::encode_predicates_defined_on({:?})" , def_id) ;
840
833
record ! ( self . per_def. predicates_defined_on[ def_id] <-
@@ -920,7 +913,7 @@ impl EncodeContext<'tcx> {
920
913
self . encode_variances_of ( def_id) ;
921
914
}
922
915
self . encode_generics ( def_id) ;
923
- self . encode_predicates ( def_id) ;
916
+ self . encode_predicates_defined_on ( def_id) ;
924
917
self . encode_optimized_mir ( def_id) ;
925
918
self . encode_promoted_mir ( def_id) ;
926
919
}
@@ -987,7 +980,7 @@ impl EncodeContext<'tcx> {
987
980
self . encode_variances_of ( def_id) ;
988
981
}
989
982
self . encode_generics ( def_id) ;
990
- self . encode_predicates ( def_id) ;
983
+ self . encode_predicates_defined_on ( def_id) ;
991
984
let mir = match ast_item. kind {
992
985
hir:: ImplItemKind :: Const ( ..) => true ,
993
986
hir:: ImplItemKind :: Method ( ref sig, _) => {
@@ -1261,21 +1254,9 @@ impl EncodeContext<'tcx> {
1261
1254
hir:: ItemKind :: Trait ( ..) |
1262
1255
hir:: ItemKind :: TraitAlias ( ..) => {
1263
1256
self . encode_generics ( def_id) ;
1264
- self . encode_predicates ( def_id) ;
1265
- }
1266
- _ => { }
1267
- }
1268
- // The only time that `predicates_defined_on` is used (on
1269
- // an external item) is for traits, during chalk lowering,
1270
- // so only encode it in that case as an efficiency
1271
- // hack. (No reason not to expand it in the future if
1272
- // necessary.)
1273
- match item. kind {
1274
- hir:: ItemKind :: Trait ( ..) |
1275
- hir:: ItemKind :: TraitAlias ( ..) => {
1276
1257
self . encode_predicates_defined_on ( def_id) ;
1277
1258
}
1278
- _ => { } // not *wrong* for other kinds of items, but not needed
1259
+ _ => { }
1279
1260
}
1280
1261
match item. kind {
1281
1262
hir:: ItemKind :: Trait ( ..) |
@@ -1378,7 +1359,7 @@ impl EncodeContext<'tcx> {
1378
1359
record ! ( self . per_def. span[ def_id] <- self . tcx. def_span( def_id) ) ;
1379
1360
self . encode_item_type ( def_id) ;
1380
1361
self . encode_generics ( def_id) ;
1381
- self . encode_predicates ( def_id) ;
1362
+ self . encode_predicates_defined_on ( def_id) ;
1382
1363
self . encode_optimized_mir ( def_id) ;
1383
1364
self . encode_promoted_mir ( def_id) ;
1384
1365
}
@@ -1589,7 +1570,7 @@ impl EncodeContext<'tcx> {
1589
1570
self . encode_variances_of ( def_id) ;
1590
1571
}
1591
1572
self . encode_generics ( def_id) ;
1592
- self . encode_predicates ( def_id) ;
1573
+ self . encode_predicates_defined_on ( def_id) ;
1593
1574
}
1594
1575
}
1595
1576
0 commit comments