binutils Newspaper
OCTOBER 12, 2026
s390 — Proposed

s390: Add .insn pseudo-mnemonics vri_a/b/c/d/e/f/g/h/i/j/k/l

Add support for various s390 VRI instruction formats using .insn.

This series of patches adds support for numerous variations of the VRI instruction format (vri_a through vri_l) to the s390 gas assembler using the ‘.insn’ directive. Each variant corresponds to different processor generations (z13, z14, z17), and the patches include updates to opcode definitions, documentation, and test suites.

In Details

This patch introduces support for twelve variations of the VRI instruction format (vri_a through vri_l) in the s390 GNU Assembler (gas) using the '.insn' pseudo-mnemonic. It defines these formats, including specific operand orderings for VRI-c, in opcodes/s390-opc.c, and adds corresponding tests to gas/testsuite/gas/s390/zarch-operands.d/.s, referencing historical introduction dates on IBM z/Architecture processors.

For Context
.insn
A GNU assembler directive that allows embedding raw instruction bytes or defining pseudo-mnemonics for specific instruction formats.
pseudo-mnemonic
An assembly language construct that represents a machine instruction, potentially with operands that are not direct encodings of machine code but are processed by the assembler.
VRI
A specific instruction format in the s390 architecture, with various sub-types introduced across different processor generations.
z13, z14, z17
IBM mainframe processor generations that introduced different versions of the VRI instruction format.
Filed Under: s390gas.insninstruction-setmainframe