Aarch64: Add new qualifier ARCH64_OPND_QLF_UNKNOWN
Introduce AARCH64_OPND_QLF_UNKNOWN to represent unknown operand qualifiers, improving code consistency.
This patch introduces a new qualifier, AARCH64_OPND_QLF_UNKNOWN, to represent cases where the operand qualifier is unknown. It replaces some uses of AARCH64_OPND_QLF_NIL and aims to improve code consistency, especially concerning the F_STRICT flag for SVE instructions. For development, the default qualifier value during parsing is changed to AARCH64_OPND_QLF_ERR to catch errors early and ensure explicit qualifier assignments, which could prevent unexpected behavior with future changes.
In Details
In the aarch64 backend, operand qualifiers specify additional constraints on register operands. The patch adds AARCH64_OPND_QLF_UNKNOWN to represent cases where the qualifier is not immediately known during parsing but can be deduced later. This change aims to improve consistency in how operand qualifiers are handled, especially in the context of SVE and the F_STRICT flag within gas/config/tc-aarch64.c.
For Context
When assembling code, the assembler needs to know the exact type and size of data that instructions will operate on. Operand qualifiers are extra bits of information attached to registers or memory locations that specify these constraints. This patch adds a new type of qualifier, UNKNOWN, for situations where the assembler doesn't yet know the data type but can figure it out later. This helps the assembler handle instructions more consistently, especially for newer CPU features.