From f9a6e1aed08554353ee72c32a84c0d5a7b75a40c Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Thu, 30 May 2019 12:19:59 +0200 Subject: [PATCH] ARM: Add macro "strh___%r0,(%fp,+#$i8)". * lib/arm-mes/arm.M1 (strh___%r0,(%fp,+#$i8)): New macro. --- lib/arm-mes/arm.M1 | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/arm-mes/arm.M1 b/lib/arm-mes/arm.M1 index 617360f5..b6b4d552 100644 --- a/lib/arm-mes/arm.M1 +++ b/lib/arm-mes/arm.M1 @@ -226,7 +226,13 @@ DEFINE strh___%r1,(%r1) b010c1e1 # strh r1, [r1] DEFINE strh___%r2,(%r2) b020c2e1 # strh r2, [r2] DEFINE strh___%r3,(%r3) b030c3e1 # strh r3, [r3] DEFINE strh___%r4,(%r4) b040c4e1 # strh r4, [r4] -# Can't encode: DEFINE strh___%r0,(%fp,+#$i8) + +# There's a single instruction that does it--but I don't know how to encode it. +# mov %r9, immediate +# adds %r9, %r9, %fp +# strh %r0, [%r9] +DEFINE strh___%r0,(%fp,+#$i8) 90a0e30b9099e0b000c9e1 + DEFINE movle__%r0,$i8 00a0d3 # movle r0, #xx DEFINE movlt__%r0,$i8 00a0b3 # movlt r0, #xx DEFINE movge__%r0,$i8 00a0a3 # movge r0, #xx