This appendix provides information regarding the use of
the LISTING exit ASMAXTXP supplied with the High Level Assembler
Function
The LISTING exit ASMAXTXP is used
to verify the instructions used within a constrained transaction.
ASMAXTXP performs the following checks for constrained transactions:
- The transaction must not exceed more than 32 instructions.
- All instructions within the transaction must be within 256 bytes
contiguous bytes of storage.
- In addition to all regularly-restricted instructions (those restricted
in a non-constrained transaction), the following instructions are
also restricted:
- Any instruction not defined in Chapter 7 of the z/Architecture
Principles of Operation.
- The only branching instructions are relative branches with a
positive relative immediate operand.
- Instructions that cause a classic serialization operation. Exceptions
to this rule include TRANSACTION END and any instructions that cause
specific-operand serialization.
- All SS and SSE format instructions.
- A list of individual instructions that may execute in the hardware
coprocessor.
Other constraints such as operand alignment and number of
locations accessed are not possible to check during assembly.
Invoking the exit
To invoke the exit, specify
the EXIT assembler option as follows: EXIT(PRTEXIT(ASMAXTXP))
The
sample program ASMASTXP found in SASMSAM1 can be run with the above
assembler option as an example of how ASMAXTXP processes constrained
transactions.
Messages