binutils Newspaper
OCTOBER 6, 2026
s390 — Proposed

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.

For Context
.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).
Filed Under: binutilsgass390assemblerinstruction format