summaryrefslogtreecommitdiff
path: root/opcodes/loongarch-opc.c
diff options
context:
space:
mode:
authorWANG Xuerui <git@xen0n.name>2022-07-27 19:07:57 +0800
committerliuzhensong <liuzhensong@loongson.cn>2022-08-01 15:57:32 +0800
commit20f2e2686c79a5ac951f0cc283f385c16bda5d50 (patch)
treef3a9565eb2351df9305505f103df549576db42d8 /opcodes/loongarch-opc.c
parent3f6e97039ec6f476b6fe09768f4b89722ffef10f (diff)
opcodes: LoongArch: add "ret" instruction to reduce typing
This syntactic sugar is present in both classical and emerging architectures, like Alpha, SPARC and RISC-V, and assembler macros doing the same thing can already be found in the wild e.g. [1], proving the feature's popularity. It's better to provide support directly in the assembler so downstream users wouldn't have to re-invent this over and over again. [1]: https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/loongarch/sysdep.h;h=c586df819cd90;hb=HEAD#l28
Diffstat (limited to 'opcodes/loongarch-opc.c')
-rw-r--r--opcodes/loongarch-opc.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/opcodes/loongarch-opc.c b/opcodes/loongarch-opc.c
index 35bae8c3ed..1b510048c2 100644
--- a/opcodes/loongarch-opc.c
+++ b/opcodes/loongarch-opc.c
@@ -841,6 +841,7 @@ static struct loongarch_opcode loongarch_jmp_opcodes[] =
{ 0x0, 0x0, "bgtu", "r,r,la", "bltu %2,%1,%%b16(%3)", 0, 0, 0 },
{ 0x0, 0x0, "bleu", "r,r,la", "bgeu %2,%1,%%b16(%3)", 0, 0, 0 },
{ 0x0, 0x0, "jr", "r", "jirl $r0,%1,0", 0, 0, 0 },
+ { 0x0, 0x0, "ret", "", "jirl $r0,$r1,0", 0, 0, 0 },
{ 0 } /* Terminate the list. */
};