/sys$common/syshlp/helplib.hlb
MACRO, VAX MACRO Assembler, Vector Instructions, VMERGE

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

      Vector Merge

    Format:

      vector vector merge:

      VVMERGE    [/0|1]    Va, Vb, Vc

      vector scalar merge:

       { VSMERGE  }
       { VSMERGEF }
       { VSMERGED }   [/0|1]   src, Vb, Vc
       {          }
       { VSMERGEG }

    Architecture

    Format
    vector-vector:   opcode   cntrl.rw

    vector-scalar:   opcode   cntrl.rw,src.rq
    opcodes

    EEFD    VVMERGE   Vector Vector Merge

    EFFD    VSMERGE   Vector Scalar Merge

    vector_control_word

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

       None.

    operation
      FOR i <- 0 TO VLR-1
        BEGIN
          IF VVMERGE THEN
            IF {VMR<i> EQL MTF} THEN
               Vc[i] <- Va[i]
            ELSE
               Vc[i] <- Vb[i]

          IF VSMERGE THEN
            IF {VMR<i> EQL MTF} THEN
               Vc[i] <- src
            ELSE
               Vc[i] <- Vb[i]
        END
  Close     HLB-list     TLB-list     Help  

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