User`s guide

Macros for Porting from VAX to Alpha or I64
$BYTES_TO_PAGES
rightshift argument; invoking the macro with both these arguments generates a
compile-time warning.
quad=YES
If YES, the conversion supports 64-bit addressing. If NO, the conversion does not
support 64-bit addressing.
$NEXT_PAGE
Computes the virtual address of the first byte in the next page.
Format
$NEXT_PAGE source_va, dest_va, clearbwp=NO, user_pagesize_addr,
user_mask_addr, quad=YES
Parameters
source_va
Source virtual address.
dest_va
Destination of virtual address within next page.
clearbwp=NO
If YES, masks the byte-within-page portion of the source virtual address.
The clearbwp=NO option is a performance enhancement, avoiding unnecessary
instructions if you know you are starting on a page boundary or you are intending
to divide by page-size anyway.
user_pagesize_addr
Location of the page-size value (returned by a call to the $GETSYI system service
specifying the SYI$_PAGESIZE item descriptor) in the application data area.
If this argument is blank, the macro uses MMG$GL_PAGESIZE (bigpage) or
MMG$C_VAX_PAGE_SIZE (vaxpage).
user_mask_addr
Location of the application-provided byte-within-page mask. If this argument is
blank, the macro uses MMG$GL_BWP_MASK if user_pagesize_addr is also
blank. Otherwise, it subtracts 1 from the contents of the user_pagesize_addr
and uses that value.
quad=YES
If YES, the conversion supports 64-bit addressing. If NO, the conversion does not
support 64-bit addressing.
Macros for Porting from VAX to Alpha or I64 D–3