MemCom Reference Manual > MemCom (Old) Fortran77 API > The Dynamic Memory Manager (DMM) > dmmall

Name

dmmall, dmmallf, dmmalu — Allocate dynamic memory

Description

dmmall reserves nwords integer*4 words of dynamic memory in the memory stack. dmmallf reserves nwords real*8 words of dynamic memory in the memory stack. The returned integer*4 ident identifies the portion of allocated memory and it is tied to the allocated memory until the memory is explicitly released. Re-allocation (by means of dmmrea) preserves the identifier, although the allocated memory may reside somewhere else in the memory stack. Reference to the allocated memory always occurs with the offset function dmmptr(ident) which is located in the insert file memcom.ins. dmmalu performs the same operation as dmmall, but a user flag ucode is added to the attribute list.

Specification (F77)

subroutine dmmall(size, ident, status)
integer*4 size
integer*4 ident
integer*4 status

subroutine dmmallf(nwords, ident, status)
integer*4 size
integer*4 ident
integer*4 status

subroutine dmmalu(nwords, ucode, ident, status)
integer*4 size
integer*4 ident
integer*4 status

Parameters

nwords

Size of array to be allocted, counted in number of integer*4/real*4 (dmmall) or real*8/integer*8 (dmmallf) words (input).

ucode

User code (input), dmmalu only. The user code must be a positive integer.

ident

DMM identifier returned (output).

status

Status code returned (output). A value of 0 indicates normal completion of the operation. A negative value indicates an error. A positive value indicates a warning. See MemCom error codes.