Skip to content

Commit 5488004

Browse files
Julien Thierrywilldeacon
authored andcommitted
arm64: insn: Add some opcodes to instruction decoder
Add decoding capability for some instructions that objtool will need to decode. Signed-off-by: Julien Thierry <jthierry@redhat.com> Link: https://lore.kernel.org/r/20210303170536.1838032-8-jthierry@redhat.com Signed-off-by: Will Deacon <will@kernel.org>
1 parent d4b2173 commit 5488004

1 file changed

Lines changed: 9 additions & 0 deletions

File tree

arch/arm64/include/asm/insn.h

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,12 @@ __AARCH64_INSN_FUNCS(adr, 0x9F000000, 0x10000000)
296296
__AARCH64_INSN_FUNCS(adrp, 0x9F000000, 0x90000000)
297297
__AARCH64_INSN_FUNCS(prfm, 0x3FC00000, 0x39800000)
298298
__AARCH64_INSN_FUNCS(prfm_lit, 0xFF000000, 0xD8000000)
299+
__AARCH64_INSN_FUNCS(store_imm, 0x3FC00000, 0x39000000)
300+
__AARCH64_INSN_FUNCS(load_imm, 0x3FC00000, 0x39400000)
301+
__AARCH64_INSN_FUNCS(store_pre, 0x3FE00C00, 0x38000C00)
302+
__AARCH64_INSN_FUNCS(load_pre, 0x3FE00C00, 0x38400C00)
303+
__AARCH64_INSN_FUNCS(store_post, 0x3FE00C00, 0x38000400)
304+
__AARCH64_INSN_FUNCS(load_post, 0x3FE00C00, 0x38400400)
299305
__AARCH64_INSN_FUNCS(str_reg, 0x3FE0EC00, 0x38206800)
300306
__AARCH64_INSN_FUNCS(ldadd, 0x3F20FC00, 0x38200000)
301307
__AARCH64_INSN_FUNCS(ldr_reg, 0x3FE0EC00, 0x38606800)
@@ -304,6 +310,8 @@ __AARCH64_INSN_FUNCS(ldrsw_lit, 0xFF000000, 0x98000000)
304310
__AARCH64_INSN_FUNCS(exclusive, 0x3F800000, 0x08000000)
305311
__AARCH64_INSN_FUNCS(load_ex, 0x3F400000, 0x08400000)
306312
__AARCH64_INSN_FUNCS(store_ex, 0x3F400000, 0x08000000)
313+
__AARCH64_INSN_FUNCS(stp, 0x7FC00000, 0x29000000)
314+
__AARCH64_INSN_FUNCS(ldp, 0x7FC00000, 0x29400000)
307315
__AARCH64_INSN_FUNCS(stp_post, 0x7FC00000, 0x28800000)
308316
__AARCH64_INSN_FUNCS(ldp_post, 0x7FC00000, 0x28C00000)
309317
__AARCH64_INSN_FUNCS(stp_pre, 0x7FC00000, 0x29800000)
@@ -336,6 +344,7 @@ __AARCH64_INSN_FUNCS(rev64, 0x7FFFFC00, 0x5AC00C00)
336344
__AARCH64_INSN_FUNCS(and, 0x7F200000, 0x0A000000)
337345
__AARCH64_INSN_FUNCS(bic, 0x7F200000, 0x0A200000)
338346
__AARCH64_INSN_FUNCS(orr, 0x7F200000, 0x2A000000)
347+
__AARCH64_INSN_FUNCS(mov_reg, 0x7FE0FFE0, 0x2A0003E0)
339348
__AARCH64_INSN_FUNCS(orn, 0x7F200000, 0x2A200000)
340349
__AARCH64_INSN_FUNCS(eor, 0x7F200000, 0x4A000000)
341350
__AARCH64_INSN_FUNCS(eon, 0x7F200000, 0x4A200000)

0 commit comments

Comments
 (0)