VMS Help MACRO, VAX MACRO Assembler, Instructions, INSQUE *Conan The Librarian (sorry for the slow response - running on an old VAX) |
Purpose: Add entry to head or tail of queue Format: opcode entry.ab,pred.ab Operation: if {all memory accesses can be completed} then begin (entry) = (pred); ;forward link (entry+4) = pred; ;backward link ((pred)+4) = entry; ;backward successor (pred) = entry; ;forward predessor end; else begin {backup instruction}; {initiate fault}; end; C. Codes: N = {(entry) LSS (entry + 4)}, V = 0, C = {(entry) LSSU (entry + 4)}, Z = {(entry) EQL (entry + 4)} Exceptions: None Opcode: 0E INSQUE Insert entry in queue Description: The queue entry specified by the operand entry is inserted into the queue following the entry specified by pred. If the entry inserted is the first one in the queue, the Z bit is set; otherwise it is cleared. The insertion is a noninterruptable operation. The entire operation is validated before any portion of it is attempted. The queue will be left in a consistent state if a memory management violation occurs.
|