From bdfede0b931a38c5133d163fc061d9d9c8f44c3b Mon Sep 17 00:00:00 2001 From: Rerumu Date: Thu, 7 Jul 2022 20:10:47 -0400 Subject: [PATCH] Remove entries for tables with no elements --- codegen/luajit/src/analyzer/br_table.rs | 4 ++++ codegen/luau/src/analyzer/br_target.rs | 7 ++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/codegen/luajit/src/analyzer/br_table.rs b/codegen/luajit/src/analyzer/br_table.rs index 67bcb45..1d5ba9f 100644 --- a/codegen/luajit/src/analyzer/br_table.rs +++ b/codegen/luajit/src/analyzer/br_table.rs @@ -11,6 +11,10 @@ struct Visit { impl Visitor for Visit { fn visit_br_table(&mut self, table: &BrTable) { + if table.data().is_empty() { + return; + } + let id = table as *const _ as usize; let len = self.id_map.len() + 1; diff --git a/codegen/luau/src/analyzer/br_target.rs b/codegen/luau/src/analyzer/br_target.rs index 28d9a99..cebe09e 100644 --- a/codegen/luau/src/analyzer/br_target.rs +++ b/codegen/luau/src/analyzer/br_target.rs @@ -20,10 +20,15 @@ impl Visitor for Visit { } fn visit_br_table(&mut self, table: &BrTable) { + self.has_branch = true; + + if table.data().is_empty() { + return; + } + let id = table as *const _ as usize; let len = self.br_map.len() + 1; - self.has_branch = true; self.br_map.insert(id, len); } }