#[test]
fn diamond() {
- let graph = TestGraph::new(0, &[
- (0, 1),
- (0, 2),
- (1, 3),
- (2, 3),
- ]);
+ let graph = TestGraph::new(0, &[(0, 1), (0, 2), (1, 3), (2, 3)]);
let dominators = dominators(&graph);
let immediate_dominators = dominators.all_immediate_dominators();
#[test]
fn paper() {
// example from the paper:
- let graph = TestGraph::new(6, &[
- (6, 5),
- (6, 4),
- (5, 1),
- (4, 2),
- (4, 3),
- (1, 2),
- (2, 3),
- (3, 2),
- (2, 1),
- ]);
+ let graph = TestGraph::new(6,
+ &[(6, 5), (6, 4), (5, 1), (4, 2), (4, 3), (1, 2), (2, 3), (3, 2),
+ (2, 1)]);
let dominators = dominators(&graph);
let immediate_dominators = dominators.all_immediate_dominators();
assert_eq!(immediate_dominators[5], Some(6));
assert_eq!(immediate_dominators[6], Some(6));
}
-