s390: Make D(B) operand optional in .insn pseudo-mnemonic s
Makes the D(B) operand optional for the s390 .insn pseudo-mnemonic 's', aligning it with the instruction format.
This patch makes the D(B) composite operand optional in the s390 assembler’s .insn pseudo-mnemonic for the ‘s’ instruction. This change aligns the assembler’s behavior with the S instruction format, which specifies optional B and D fields. The commit also adds comments to existing tests for ESA/390 and includes new tests for z/Architecture s instructions.
In Details
This patch targets opcodes/s390-opc.c and testsuite files to update the .insn pseudo-mnemonic for the s390 's' instruction. The 'S' instruction format includes optional Base (B) and Displacement (D) fields, which are represented as a D(B) composite operand in the .insn pseudo-mnemonic. This change makes that composite operand optional, reflecting the actual instruction encoding. It also involves updating documentation and adding test cases for both ESA/390 and z/Architecture variants.
- .insn
- An assembler pseudo-mnemonic that allows embedding raw machine instructions using their format and opcode.
- pseudo-mnemonic
- An assembler directive that represents a machine instruction or a sequence of instructions using a symbolic name.
- s390
- IBM's mainframe and enterprise server architecture.
- optional operands
- Operands for an instruction or pseudo-mnemonic that are not required and can be omitted, often controlled by the instruction format or specific flags.
- D(B)
- In s390 assembly, a composite operand representing a displacement (D) relative to a base register (B).