--
You received this message because you are subscribed to the Google Groups "RISC-V SW Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+unsubscribe@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
To view this discussion on the web visit https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/0396106f-9929-4d9c-a858-195fe94f8036%40groups.riscv.org.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+un...@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
To view this discussion on the web visit https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/CAMU%2BEkw2jfi4F5zU%2BQchdztDRYU7bNzNzdc3Xhp4Tu%2BF6O7TTg%40mail.gmail.com.
--
This could be useful.Should include the register numbers for x86 named registers.
The definition of "scratch registers" isn't consistent, as you included argument registers for some but not others (e.g. RISC-V)The definition of "Intra-procedure-call scratch register" is not consistent, as it doesn't include e.g. RISC-V t0-t6.I think you only need one of these categories, as I'm not aware of any ABI in which a called function is not allowed to destroy argument registers.To me, "scratch register" means anything a function is allowed to destroy. There ar two kinds: registers which might hold an argument (and thus can not be touched by linkage code between the calling function and the called function), and registers which can't hold an argument ("Intra-procedure-call scratch register") and thus can be freely destroyed by code between the calling function and the called function, as well as by the called function.
Yes. It’s quite useful.There is the question as to whether there needs to be RV32 and RV64 columns however the register assignments are common to both so it is not really necessary.
There is also RV32E to consider.
On 11 Mar 2017, at 7:54 AM, Bruce Hoult <br...@hoult.org> wrote:
This could be useful.Should include the register numbers for x86 named registers.The definition of "scratch registers" isn't consistent, as you included argument registers for some but not others (e.g. RISC-V)The definition of "Intra-procedure-call scratch register" is not consistent, as it doesn't include e.g. RISC-V t0-t6.I think you only need one of these categories, as I'm not aware of any ABI in which a called function is not allowed to destroy argument registers.To me, "scratch register" means anything a function is allowed to destroy. There ar two kinds: registers which might hold an argument (and thus can not be touched by linkage code between the calling function and the called function), and registers which can't hold an argument ("Intra-procedure-call scratch register") and thus can be freely destroyed by code between the calling function and the called function, as well as by the called function.
On Fri, Mar 10, 2017 at 8:02 PM, Viller Hsiao <ville...@gmail.com> wrote:
Hi all,To get familiar with CPU architectures, I made a cheat sheet about the register map of RISC-V/ARM/MIPS/x86. The URL isHope it's helpful.Regards,Viller
--
You received this message because you are subscribed to the Google Groups "RISC-V SW Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sw-dev+un...@groups.riscv.org.
To post to this group, send email to sw-...@groups.riscv.org.
Visit this group at https://groups.google.com/a/groups.riscv.org/group/sw-dev/.
To view this discussion on the web visit https://groups.google.com/a/groups.riscv.org/d/msgid/sw-dev/0396106f-9929-4d9c-a858-195fe94f8036%40groups.riscv.org.