1
1
use crate :: graph:: { Graph , GraphId , Graphs , Node , NodeId , NodeKind } ;
2
+ use itertools:: Itertools ;
2
3
use rustc_index:: vec:: IndexVec ;
3
4
use rustc_middle:: mir:: Field ;
4
5
use std:: collections:: HashMap ;
5
6
use std:: collections:: HashSet ;
6
7
use std:: cmp;
7
- use itertools:: Itertools ;
8
8
use std:: fmt:: { self , Debug , Display , Formatter } ;
9
9
10
10
/// The information checked in this struct is whether nodes flow to loads, stores, and offsets (pos
@@ -161,10 +161,11 @@ impl Display for NodeInfo {
161
161
( "+offset" , self . flows_to_neg_offset ) ,
162
162
( "-offset" , self . flows_to_neg_offset ) ,
163
163
( "non unique by" , self . non_unique ) ,
164
- ] . into_iter ( )
165
- . filter_map ( |( name, node) | Some ( ( name, node?) ) )
164
+ ]
165
+ . into_iter ( )
166
+ . filter_map ( |( name, node) | Some ( ( name, node?) ) )
166
167
. format_with ( ", " , |( name, node) , f| f ( & format_args ! ( "{name} {node}" ) ) ) ;
167
- write ! ( f, "{}" , s)
168
+ write ! ( f, "{}" , s)
168
169
}
169
170
}
170
171
@@ -190,11 +191,12 @@ fn node_does_neg_offset(n: &Node) -> bool {
190
191
}
191
192
192
193
fn add_children_to_vec ( g : & Graph , parents : & HashSet < NodeId > , v : & mut Vec < NodeId > ) {
193
- v. extend ( g. nodes
194
- . iter_enumerated ( )
195
- . filter_map ( |( id, node) | Some ( ( id, node. source ?) ) )
196
- . filter ( |( _, src_idx) | parents. contains ( src_idx) )
197
- . map ( |( id, _) | id)
194
+ v. extend (
195
+ g. nodes
196
+ . iter_enumerated ( )
197
+ . filter_map ( |( id, node) | Some ( ( id, node. source ?) ) )
198
+ . filter ( |( _, src_idx) | parents. contains ( src_idx) )
199
+ . map ( |( id, _) | id) ,
198
200
) ;
199
201
}
200
202
@@ -292,9 +294,9 @@ pub fn check_whether_rules_obeyed(g: &Graph, n: &NodeId) -> Option<NodeId> {
292
294
to_view. extend (
293
295
g. nodes
294
296
. iter_enumerated ( )
295
- . filter_map ( |( id, node) | Some ( ( id, node. source ?) ) )
296
- . filter ( |( _, src_idx) | * src_idx == cur_node_id)
297
- . map ( |( id, _) | ( id, lineage. clone ( ) ) )
297
+ . filter_map ( |( id, node) | Some ( ( id, node. source ?) ) )
298
+ . filter ( |( _, src_idx) | * src_idx == cur_node_id)
299
+ . map ( |( id, _) | ( id, lineage. clone ( ) ) ) ,
298
300
) ;
299
301
}
300
302
None
0 commit comments