s390: cmpsc operands R1 and R2 must be register pairs
Ensures the cmpsc instruction in binutils assembler correctly handles register pair operands.
This patch corrects the binutils assembler’s validation for the s390 ‘cmpsc’ instruction, ensuring that its R1 and R2 operands correctly designate an even-numbered register, forming an even-odd pair. This adherence to the architecture specification prevents specification exceptions. Changes include opcode definitions and updates to the gas test suite.
In Details
This patch addresses the s390 'cmpsc' instruction within the binutils assembler. It enforces the architectural rule that the R1 and R2 operands must refer to even-numbered registers, which are used in pairs. This validation is crucial for preventing specification exceptions that could arise from incorrect register pair usage on s390 processors.