summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSven Wegener <sven.wegener@stealer.net>2016-01-03 15:01:16 +0100
committerSven Wegener <sven.wegener@inovex.de>2016-09-21 22:27:44 +0200
commitf5bf07983230f49f112a31aa91a4568161ff53d2 (patch)
tree96b7c617bdbb2cf175018376a5635efeb27e5dc2
parentcc6d6c405f36641f41e1b1968c9db25d30f8a800 (diff)
stm8: these ops read a when in argsfor-upstream
Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
-rw-r--r--src/stm8/peep.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/stm8/peep.c b/src/stm8/peep.c
index ba87055dc..3b3ce6397 100644
--- a/src/stm8/peep.c
+++ b/src/stm8/peep.c
@@ -588,6 +588,9 @@ stm8MightRead(const lineNode *pl, const char *what)
if (!extra)
{
+ if (ISINST (pl->line, "add") && !argCont(pl->line + 4, 'a') && !argCont (strchr (pl->line, ','), 'a'))
+ return FALSE;
+
if (ISINST (pl->line, "adc")
|| ISINST (pl->line, "add")
|| ISINST (pl->line, "and")
@@ -771,6 +774,9 @@ stm8SurelyWrites(const lineNode *pl, const char *what)
if (!extra)
{
+ if (ISINST (pl->line, "add") && !argCont(pl->line + 4, 'a') && !argCont (strchr (pl->line, ','), 'a'))
+ return FALSE;
+
if (ISINST (pl->line, "adc")
|| ISINST (pl->line, "add")
|| ISINST (pl->line, "and")