From 90fecaa84ff317e30c3339d3edb17b13211e3e64 Mon Sep 17 00:00:00 2001 From: Miquel Sabaté Solà Date: Wed, 3 Sep 2025 23:16:54 +0200 Subject: asan: Add fixes on absolute/indirect addressing MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The check was not being applied on certain conditions. Signed-off-by: Miquel Sabaté Solà --- lib/xixanta/src/assembler.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'lib/xixanta/src/assembler.rs') diff --git a/lib/xixanta/src/assembler.rs b/lib/xixanta/src/assembler.rs index 28a2313..89ad3ac 100644 --- a/lib/xixanta/src/assembler.rs +++ b/lib/xixanta/src/assembler.rs @@ -2398,7 +2398,9 @@ impl<'a> Assembler<'a> { global: false, }); } - self.asan_check_arm(evaluated_node, &val)?; + if !matches!(node.value.value.as_str(), "jmp" | "jsr") { + self.asan_check_arm(evaluated_node, &val)?; + } Ok((AddressingMode::Indirect, val)) } }, @@ -2514,6 +2516,9 @@ impl<'a> Assembler<'a> { val.size = 1; Ok((AddressingMode::RelativeOrZeropage, val)) } else { + if !matches!(base.value.value.as_str(), "jmp" | "jsr") { + self.asan_check_arm(left_arm, &val)?; + } Ok((AddressingMode::Absolute, val)) } } -- cgit v1.2.3