https://sourceware.org/bugzilla/show_bug.cgi?id=25403
Bug ID: 25403 Summary: [AArch64, ARMv8.4] objdump doesn't disassemble cfinv correctly Product: binutils Version: 2.34 (HEAD) Status: UNCONFIRMED Severity: minor Priority: P2 Component: binutils Assignee: unassigned at sourceware dot org Reporter: james.boyle at arm dot com Target Milestone: --- cfinv (opcode 0xd500401f) for flag manipulation instruction (from ARMv8.4 extension) decodes incorrectly as: msr s0_0_c4_c0_0, xzr It should decode as: cfinv I used: $ echo "cfinv" | aarch64-none-linux-gnu-as -march=armv8.4-a Which assembles ok. Then running: $ ./objdump -D a.out: file format elf64-littleaarch64 Disassembly of section .text: 0000000000000000 <.text>: 0: d500401f msr s0_0_c4_c0_0, xzr It looks like in commit e9dbdd80cb02ac66cf7d4cd1207ec11928db2c95 (Thu, 16 Nov 2017) a change was made to support this along with other flag manipulation instructions, but cfinv disassembly seems to have been broken from the outset. Looking at test gas/testsuite/gas/aarch64/armv8_4-a.d it never appeared. I think the other v8.4 flag manipulation instructions are disassembling correctly. -- You are receiving this mail because: You are on the CC list for the bug.