binutils Newspaper
OCTOBER 12, 2026
s390 — Proposed

s390: Document operand ordering rules for .insn directive

Documents operand ordering rules for the .insn directive in the s390 assembler.

This patch documents the operand ordering rules for the .insn directive in the s390 assembler. Operands should generally follow the ascending order of their field indices as specified in the Principles of Operation manuals, with exceptions noted. Composite operands are treated as single units for indexing. This documentation improves clarity and usability of the .insn directive.

In the Thread 1 participant
  1. Jens Remus <jremus@linux.ibm.com> proposer

    Documents the general rules for ordering operands in the .insn directive for s390.

    “Document that operands for the .insn directive are to be specified in asceding order of their field indices as listed in the Principles of Operation manuals. Composite operands, such as Dx(Bx), Dx(Lx,Bx), and Dx(Xx,Bx), are treated as a single operand and share the same index. Exceptions to the ascending index order are noted in the respective format descriptions.”

In Details

This commit adds detailed documentation to the s390 assembler's manual (gas/doc/c-s390.texi) regarding the operand ordering for the .insn directive. It clarifies that operands should generally be listed in ascending order of their field indices as defined in the architecture's Principles of Operation manuals. It also specifies how composite operands (like Dx(Bx)) are treated and notes that exceptions to the ordering rules exist for certain formats.

For Context
.insn
An assembler directive used to specify machine instructions directly, often with pseudo-mnemonics.
field indices
Numerical identifiers assigned to different parts of an instruction format in the architecture manuals, used here to determine operand order.
composite operands
Operands that consist of multiple parts, such as a displacement and a base register (e.g., D2(B2)).
Filed Under: s390assemblerdocumentationinstruction-format