Start of change

IEATXDC — Transactional execution diagnostic controls

Description

In support of the diagnostic controls of transactional execution, as defined in the z/Architecture® Principles of Operation, the following services are provided:

For the current task,
  • Indicate the scope of the diagnostic controls.
  • Set the diagnostic controls for "no abort".
  • Set the diagnostic controls for "abort every".
  • Set the diagnostic controls for "abort random".

Environment

The requirements for the caller are:

Environmental factor Requirement
Minimum authorization: Problem state with PSW key 8-15. SCOPE=ALL requires supervisor state; if a problem state caller indicates SCOPE=ALL, it is treated as SCOPE=PROBLEM.
Dispatchable unit mode: Task
Cross memory mode: Any PASN, any HASN, any SASN
AMODE: 31- or 64-bit
ASC mode: Primary or access register (AR)
Interrupt status: Enabled or disabled for I/O and external interrupts
Locks:

The caller may hold any lock(s). No locks are required.

Control parameters: None.

Programming requirements

None.

Restrictions

None.

Input register information

Before issuing the IEATXDC macro, the caller does not have to place any information into any general purpose register (GPR).

Before issuing the IEATXDC macro, the caller does not have to place any information into any access register (AR).

Output register information

When control returns to the caller, the GPRs contain:
Register
Contents
0-1
Used as work registers by the system
2-13
Unchanged
14
Used as a work register by the system
15
Return code
When control returns to the caller, the ARs contain:
Register
Contents
0-1
Used as work registers by the system
2-13
Unchanged
14-15
Used as work registers by the system

Performance implications

None.

Syntax

The IEATXDC macro is written as follows:

Syntax Description
   
   name name: symbol. Begin name in column 1.
   
One or more blanks must precede IEATXDC.
   
IEATXDC  
   
One or more blanks must follow IEATXDC.
   
SCOPE=PROBLEM  
SCOPE=ALL  
   
,OPERATION=NO_ABORT  
,OPERATION=SET_EVERY  
,OPERATION=SET_RANDOM  
   
  ,RETCODE=retcode retcode: RS-type address or register (2) - (12) or (15), (GPR15), (REG15), or (R15).
   

Parameters

The parameters are explained as follows:

name
An optional symbol, starting in column 1, that is the name on the IEATXDC macro invocation. The name must conform to the rules for an ordinary assembler language symbol.
SCOPE=PROBLEM
SCOPE=ALL
A required parameter that identifies the scope of the diagnostic controls.
SCOPE=PROBLEM
indicates that the diagnostic controls apply only for problem state transactional execution.
SCOPE=ALL
indicates that the diagnostic controls apply both to problem state and supervisor state transactional execution. If a problem state caller requests SCOPE=ALL, however, it is treated as SCOPE=PROBLEM.
,OPERATION=NO_ABORT
,OPERATION=SET_EVERY
,OPERATION=SET_RANDOM
A required parameter that identifies the type of operation to perform.
,OPERATION=NO_ABORT
indicates to set the transactional diagnostic controls for this task so that the system will not apply its SET_EVERY or SET_RANDOM rules. Transactions themselves may still abort for all the defined architectural reasons.
,OPERATION=SET_EVERY
indicates to set the transactional diagnostic controls for this task to request abort of every nonconstrained transaction.
,OPERATION=SET_RANDOM
indicates to set the transactional diagnostic controls for this task to request abort of random nonconstrained transactions.
,RETCODE=retcode
An optional output parameter into which the return code is to be copied from GPR 15. If you specify 15, GPR15, REG15, or R15 (within or without parentheses), the value will be left in GPR 15.

To code: Specify the RS-type address of a fullword field, or register (2)-(12) or (15), (GPR15), (REG15), or (R15).

ABEND codes

None.

Return codes

When the IEATXDC macro returns control to your program, GPR 15 (and retcode, when you code RETCODE) contains a return code.

The following table identifies the hexadecimal return and reason codes.

Table 1. Return codes for the IEATXDC Macro
Return Code Meaning and Action
0 Meaning: Successful completion. Diagnostic controls are set to the requested value

Action: None required.

4 Meaning: Warning. The machine does not support transactional execution. Diagnostic controls are not set.

Action: Avoid calling IEATXDC when the machine does not support transactional execution.

8 Meaning: Unexpected input.

Action: Check for possible storage overlay.

12 Meaning: Service called in SRB mode.

Action: Avoid using IEATXDC in SRB mode.

Examples

None.

End of change