bug-mes
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug-mes] ARM instruction encoding of "halfword data transfer with immed


From: Jeremiah
Subject: [bug-mes] ARM instruction encoding of "halfword data transfer with immediate offset" is difficult in M1
Date: Fri, 31 May 2019 01:29:43 +0000

> just a heads-up, there's a strange encoding of some ARM instruction
> that I don't know how to represent in M1
well we know there is a set of instruction encodings that can't be
expressed as hex or octal but there are ugly ways of working around that
in binary.

> It's Halfword data transfer with immediate offset, for example:
>  STRH %r0, [%fp, +#2]
> The immediate offset is split into two parts and the parts encoded in
>  non-consecutive bit blocks.
Depending upon the size one might have to handle the immediate encoding
in the layer above M1 as the immediates need to fit into the
!num/@num/%num pattern.
Sometimes the only answer in M0 is punt via '11001' which is far from
ideal but one can always add in ; Immediate +#2 on everyone of those
lines generated

> I can work around it using a scratch register, but just so we don't
> forget it I write this.
It is actually an old problem from back when people asked when I was
going to port it to RISC-V; Now there is a terriable encoding scheme...

-Jeremiah



reply via email to

[Prev in Thread] Current Thread [Next in Thread]