Skip to content
Snippets Groups Projects

Forkify fixes

Merged Xavier Routh requested to merge forkify-fixes into main
1 unresolved thread
2 files
+ 4
5
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -39,7 +39,6 @@ struct GuardedFork {
@@ -39,7 +39,6 @@ struct GuardedFork {
guard_if: NodeID,
guard_if: NodeID,
fork_taken_proj: NodeID,
fork_taken_proj: NodeID,
fork_skipped_proj: NodeID,
fork_skipped_proj: NodeID,
guard_pred: NodeID,
guard_join_region: NodeID,
guard_join_region: NodeID,
phi_reduce_map: HashMap<NodeID, NodeID>,
phi_reduce_map: HashMap<NodeID, NodeID>,
factor: Factor, // The factor that matches the guard
factor: Factor, // The factor that matches the guard
@@ -302,7 +301,6 @@ fn guarded_fork(
@@ -302,7 +301,6 @@ fn guarded_fork(
guard_if: if_node,
guard_if: if_node,
fork_taken_proj: *control,
fork_taken_proj: *control,
fork_skipped_proj: other_pred,
fork_skipped_proj: other_pred,
guard_pred: if_pred,
guard_join_region: join_control,
guard_join_region: join_control,
phi_reduce_map: phi_nodes,
phi_reduce_map: phi_nodes,
factor,
factor,
@@ -323,13 +321,15 @@ pub fn fork_guard_elim(editor: &mut FunctionEditor, fork_join_map: &HashMap<Node
@@ -323,13 +321,15 @@ pub fn fork_guard_elim(editor: &mut FunctionEditor, fork_join_map: &HashMap<Node
join,
join,
fork_taken_proj,
fork_taken_proj,
fork_skipped_proj,
fork_skipped_proj,
guard_pred,
phi_reduce_map,
phi_reduce_map,
factor,
factor,
guard_if,
guard_if,
guard_join_region,
guard_join_region,
} in guard_info
} in guard_info
{
{
 
let Some(guard_pred) = editor.get_uses(guard_if).next() else {
 
unreachable!()
 
};
let new_fork_info = if let Factor::Max(idx, dc) = factor {
let new_fork_info = if let Factor::Max(idx, dc) = factor {
let Node::Fork {
let Node::Fork {
control: _,
control: _,
Loading