By: Doug S (foo.delete@this.bar.bar), October 13, 2021 9:01 am
Room: Moderated Discussions
Adrian (a.delete@this.acm.org) on October 13, 2021 6:22 am wrote:
> none (none.delete@this.none.com) on October 13, 2021 6:06 am wrote:
> > Documentation is available: https://developer.arm.com/documentation/ddi0602/2021-09/Base-Instructions
> >
> > Instructions for memory copy are named CPY* and those for memory set are SET*.
>
>
> TLDR:
> CPY* are memmove (copy forward or backward, as needed)
> and CPYF* are memcpy (copy forward)
With variants for whether reads or writes are privileged or unprivileged and temporal or non-temporal. There are a ton of opcodes here to cover the full matrix of possibilities.
Confirmation that the expectation is all three instructions (prologue, main and epilogue) instructions appear in sequence.
> none (none.delete@this.none.com) on October 13, 2021 6:06 am wrote:
> > Documentation is available: https://developer.arm.com/documentation/ddi0602/2021-09/Base-Instructions
> >
> > Instructions for memory copy are named CPY* and those for memory set are SET*.
>
>
> TLDR:
> CPY* are memmove (copy forward or backward, as needed)
> and CPYF* are memcpy (copy forward)
With variants for whether reads or writes are privileged or unprivileged and temporal or non-temporal. There are a ton of opcodes here to cover the full matrix of possibilities.
Confirmation that the expectation is all three instructions (prologue, main and epilogue) instructions appear in sequence.