DLSIZE [ MPE/iX Intrinsics Reference Manual ] MPE/iX 5.0 Documentation
MPE/iX Intrinsics Reference Manual
DLSIZE
NM and CM callable.
Causes the area between DL and DB in the compatibility mode (CM) stack to
be expanded or contracted within the CM stack segment.
Syntax
_____________________________________
| |
| I16 I16V |
| dldbsize:=DLSIZE(size); |
_____________________________________
Functional Return
dldbsize 16-bit signed integer (assigned functional return)
Returns the granted number of half words for the
DL-to-DB area. This value is negative, unless
error condition CCL (1) is returned; a positive
value is possible.
Parameters
size 16-bit signed integer by value (required)
Passes the desired number of half words for the
DL-to-DB area, represented by a negative value. A
size of 0 is permitted and resets the DL-to-DB area
of the CM stack to the original value assigned when
the process was created (initial DL). The size
granted is the absolute value of size, rounded up
so that the distance between the beginning of the
segment and DB is a multiple of 128 half words.
Operation Notes
If expanding, all information in the area between DL and DB is saved. If
contracting, all information in the area between DL and DB is lost.
If the DL area has been expanded, it can be contracted by calling DLSIZE
with a size parameter requesting a smaller DL-to-DB area.
When called from programs running in NM the DLSIZE intrinsic affects the
CM stack only; programmatic expansion and contraction in NM is not
necessary.
CAUTION Because of differences between DB-relative addressing (used in
compatibility mode) and virtual addressing (used in native
mode), calls to the DLSIZE intrinsic in mixed mode programming
may cause stack corruption.
Hewlett-Packard does not recommend using the DLSIZE intrinsic in
programs that move between Native mode and compatibility mode.
Condition Codes
CCE (2) Request granted. The value returned is >= the
value requested.
CCG (0) Request denied. The requested size exceeded the
maximum limit allowed. The maximum limit allowable
is granted, and its size is returned.
CCL (1) Request denied. An illegal size parameter was
specified, the size requested is less than the
initial DL size, or the size parameter was a
positive integer. The original area size, assigned
when the CM stack segment was created, is granted.
Related Information
Intrinsics None
Commands None
Manuals Introduction to MPE XL for MPE V Programmers
(30367-90005)
MPE/iX 5.0 Documentation