Skip to content

Commit

Permalink
Let's pick this back up! Fix on latest nightly by replacing `drain_fi…
Browse files Browse the repository at this point in the history
…lter` with `extract_if`

rust-lang/rust#43244
  • Loading branch information
AaronC81 committed Mar 19, 2024
1 parent 61817ab commit cd9db98
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 3 deletions.
2 changes: 1 addition & 1 deletion lang/lib/backend-core/src/lib.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
//! Language backend targeting the Delta Null's processor soft-core.

#![feature(drain_filter)]
#![feature(extract_if)]

use codegen::FunctionGenerator;
use delta_null_core_assembler::{BuildError, AssemblyItem};
Expand Down
4 changes: 2 additions & 2 deletions lang/lib/backend-core/src/reg_alloc.rs
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,9 @@ pub fn allocate(func: &Function, cfg: &ControlFlowGraph, liveness: &LivenessAnal
// function - it makes accessing them easier!
let parameter_passing_registers = [GPR::R0, GPR::R1, GPR::R2, GPR::R3];
for (var, reg) in func.arguments.iter().zip(parameter_passing_registers) {
free_registers.drain_filter(|r| r == &reg);
free_registers.extract_if(|r| r == &reg).for_each(|_| ());
mapping.insert(*var, Allocation::Register(reg));
internals_by_increasing_start.drain_filter(|(v, _)| v == &var);
internals_by_increasing_start.extract_if(|(v, _)| v == &var).for_each(|_| ());
}

let mut active = vec![];
Expand Down

0 comments on commit cd9db98

Please sign in to comment.