From 3f808cbbb60d99fe27b7e23634375d4c3eacdae1 Mon Sep 17 00:00:00 2001 From: overlookmotel <557937+overlookmotel@users.noreply.github.com> Date: Tue, 18 Mar 2025 06:40:30 +0000 Subject: [PATCH] perf(semantic): speed up creating redeclarations (#9851) Small optimization. Use `ArenaVec::from_array_in` instead of creating an empty `ArenaVec` and then immediately pushing to it. --- crates/oxc_semantic/src/scoping.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/crates/oxc_semantic/src/scoping.rs b/crates/oxc_semantic/src/scoping.rs index 2d9ab11b85372..7cf6096f04026 100644 --- a/crates/oxc_semantic/src/scoping.rs +++ b/crates/oxc_semantic/src/scoping.rs @@ -276,8 +276,7 @@ impl Scoping { }); } else { self.cell.with_dependent_mut(|allocator, cell| { - let mut v = ArenaVec::new_in(allocator); - v.push(span); + let v = ArenaVec::from_array_in([span], allocator); let redeclaration_id = cell.redeclaration_spans.len(); cell.redeclaration_spans.push(v); self.symbol_redeclarations[symbol_id] =