|
|
NM callable only.
This routine can be used to perform arithmetic on a 64-bit pointer value. Byte
offsets can be added to or subtracted from a pointer by specifying eithger a
positive or negative offset value.
Syntax
@64 I64 @64 I32
HPFADDTOPOINTER (base_ptr, offset, return_ptr, status);
Parameters
- base_ptr
64-bit pointer by reference (required)
The base_ptr can be a 64-bit pointer to an object of any type.
- offset
64-bit signed integer by reference (required)
The offset can be any positive or negative value. Specifying a positive
value will move the return_ptr forward from the previous base_ptr, while
a negative value will move the return_ptr backward from the
base_ptr
- return_ptr
64-bit pointer by reference (required)
The return_ptr is an output parameter that will have the new pointer
value returned to it. It can be a 64-bit pointer to an object of any
type
- status
32-bit signed integer by reference (optional)
Returns the status of the HPFADDTOPOINTER call. If no errors or warnings
are encountered, status returns 32 bits of zero. If errors or warnings
are encountered, status is interpretted as two 16-bit fields.Bits (0:16)
comprise status.info. A negative value indicates an error condition, and
a positive value indicates a warning condition.Bits (16:16) comprise
status.subsys. The value represents the subsystem that set the status
information.
Operation Notes
No attemt is made to verify that the pointer value returned is a legitimate
pointer to a valid object. Any invalid pointers will be detected and generate
errors when the pointers are dereferenced.
Related Information
|