[Libre-soc-dev] Question about smaller reg access
Luke Kenneth Casson Leighton
lkcl at lkcl.net
Sun Dec 27 02:36:58 GMT 2020
(lauri your list messages almost always end up in spam, apologies i only
saw this because jacob replied)
On Sunday, December 27, 2020, Jacob Lifshay <programmerjake at gmail.com>
wrote:
> The basic answer is that the compiler doesn't allocate just part of a
> 64-bit reg, it always allocates full 64-bit registers and leaves the extra
> space unused, so allocated vectors always start at a 64-bit boundary.
>
> If needed, code to access the middle of a 64-bit register can be
generated,
> just like a compiler can generate code to access a C-style bit-field.
this would either involve setting a single-predicate to have 0s in the
LSBs, or, if that is a pain actually move them down (or up) with a
twin-pred mv. twin-pred mv is a multiple sequentially ordered VINSERT.
we therefore do not need VSLIDE because 2pred does the job.
l.
--
---
crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68
More information about the Libre-soc-dev
mailing list