From 1b9f6981343cef0b34f117f2d7606771d2a00030 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Lam?= Date: Thu, 24 Jun 2021 22:47:19 +0200 Subject: [PATCH] tools: Fix strb and other str variants not being handled --- tools/util/checker.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tools/util/checker.py b/tools/util/checker.py index 166ed725..dc7d60a5 100644 --- a/tools/util/checker.py +++ b/tools/util/checker.py @@ -6,6 +6,8 @@ import capstone as cs from util import dsym, elf, utils +_store_instructions = ("str", "strb", "strh", "stur", "sturb", "sturh") + class FunctionChecker: def __init__(self, log_mismatch_cause: bool = False): @@ -111,7 +113,7 @@ class FunctionChecker: adrp_pair_registers.add(reg) continue - if i1.mnemonic == 'ldr' or i1.mnemonic == 'str': + if i1.mnemonic == 'ldr' or i1.mnemonic in _store_instructions: if i1.operands[0].reg != i2.operands[0].reg: return False if i1.operands[1].value.mem.base != i2.operands[1].value.mem.base: