binutils Newspaper
JUNE 15, 2026
Date
/
Architectures
Components
Topics
News & Policy
Other
aarch64

AArch64: Fix qualifier sequences for cinc/cinv/cneg

The qualifier sequences for the three-operand cinc/cinv/cneg AArch64 instructions are now correct.

The three-operand cinc, cinv, and cneg instructions were incorrectly using the same qualifier sequences as the four-operand variants. This commit corrects the qualifier sequences by using QL_R2NIL, which properly specifies the third operand’s qualifier. This fixes a bug that was masked by AARCH64_OPND_QLF_NIL being treated as a wildcard.

In Details

The AArch64 opcode table (opcodes/aarch64-tbl.h) defines the structure of AArch64 instructions using qualifier sequences. This commit fixes the qualifier sequences for the three-operand forms of cinc, cinv, and cneg, which were incorrectly using the same sequences as the four-operand forms. The fix involves using QL_R2NIL instead of QL_CSEL.

For Context

When assembling AArch64 instructions, the assembler uses an opcode table to determine the valid instructions and their operands. This table includes qualifier sequences that specify the type of each operand. This commit fixes an error in the qualifier sequences for the cinc, cinv, and cneg instructions, ensuring that the assembler correctly handles these instructions.

Filed Under: aarch64assembleropcode table