VMS Help
MACRO, VAX MACRO Assembler, Vector Instructions, VSCAT

 *Conan The Librarian (sorry for the slow response - running on an old VAX)

    Scatter Vector Register Data into Memory

    Format:

      VSCATL   [/0|1]    Vc, base, Vb

      VSCATQ   [/0|1]    Vc, base, Vb

    Architecture

    Format
    opcode   cntrl.rw, base.ab
    opcodes

    9DFD    VSCATL    Scatter Longword Vector from Vector Register to
                      Memory

    9FFD    VSCATQ    Scatter Quadword Vector from Vector Register to
                      Memory

    vector_control_word

             1 1 1 1 1
             5 4 3 2 1     8 7     4 3     0
            +-+-+-+-+-------+-------+-------+
            |M|M| | |       |       |       |
            |O|T|0|0|   0   |  Vb   |  Vc   |
            |E|F| | |       |       |       |
            +-+-+-+-+-------+-------+-------+
    exceptions

       access control violation
       translation not valid
       vector alignment
       modify

    operation
      FOR i <- 0 TO VLR-1
        BEGIN
          addr <- base + Vb[i]<31:0>
          IF {{MOE EQL 0} OR {{MOE EQL 1} AND {VMR<i> EQL MTF}}} THEN
            BEGIN
              IF {addr unaligned} THEN
                 {Vector Alignment Exception}

              IF VSCATL THEN
                 (addr)<31:0> <- Vc[i]<31:0>
              IF VSCATQ THEN
                 (addr)<63:0> <- Vc[i]
            END
        END
  Close     HLB-list     TLB-list     Help  

[legal] [privacy] [GNU] [policy] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.