Set Space Pointer Offset (SETSPPO)


Op Code (Hex) Operand 1 Operand 2

0092 Receiver Source

Operand 1: Space pointer.

Operand 2: Binary scalar. 

Description  The value of the binary scalar specified by operand 2 is assigned to the offset portion of the space pointer identified by operand 1. The space pointer continues to address the same space object.

Operand 1 must contain a space pointer; otherwise, a pointer type invalid  (hex 2402) exception is signaled.

When operand 1 points into teraspace, the pointer offset value might not be set correctly because there is no binary field large enough to hold a full teraspace offset. However, an exception may or may not be signaled. Note that STSPPO signals an exception when attempted on a space pointer containing a teraspace address, so there can be no expectation that a stored offset can later be used to set a teraspace offset. However, an alternative to SETSPPO for handling some teraspace values is to use a pointer to the start of the teraspace allocation and then add in an offset computed using the SUBSPPFO instruction. Offsets within one teraspace allocation can be used to set a space pointer in this way when the specific allocation size is known to be smaller than the maximum value of a binary variable. See STSPPO for more information.

When the addressability in the space pointer is modified, the instruction signals a space addressing violation  (hex 0601) exception when one of the following conditions occurs:

If the exception is signaled by this instruction for this reason, the pointer is not modified by the instruction.

Attempts to use a pointer whose offset value lies: between the currently allocated extent of the space and the maximum allocatable extent, or whose offset is outside all teraspace allocations, cause the space addressing violation  (hex 0601) exception to be signaled.

Authorization Required

Lock Enforcement

Exceptions

06 Addressing

08 Argument/Parameter

10 Damage Encountered

1C Machine-Dependent

20 Machine Support

22 Object Access

24 Pointer Specification

2E Resource Control Limit

32 Scalar Specification

36 Space Management

44 Protection Violation