Changes between Version 6 and Version 7 of IDISA_Vertical


Ignore:
Timestamp:
May 9, 2011, 6:25:29 AM (8 years ago)
Author:
cameron
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • IDISA_Vertical

    v6 v7  
    1515== Binary Operations ==
    1616
    17 These operations generally have the form `r = simd<N>::op(a, b)` for each
    18 operation `op`, where `a` and `b` are operand vectors of N bit fields and `r` is
     17These operations generally have the form `r = simd<w>::op(a, b)` for each
     18operation `op`, where `a` and `b` are operand vectors of ''w'' bit fields and `r` is
    1919the corresponding result vector.   
    2020
     
    3737== Unary Operations ==
    3838
    39 These operations generally have the form `r = simd<N>::op(a)` for each
    40 operation `op`, where `a` is an operand vector of N bit fields and `r` is
     39These operations generally have the form `r = simd<w>::op(a)` for each
     40operation `op`, where `a` is an operand vector of ''w'' bit fields and `r` is
    4141the corresponding result vector.   
    4242
    4343Some of these operations involve operations on the high half of each
    4444field h(a,,i,,) and the the low half of each field l(a,,i,,), where
    45  - h(a,,i,,) = a,,i,, >> N/2
    46  - l(a,,i,,) = a,,i,, & ((1 << N/2) - 1)
     45 - h(a,,i,,) = a,,i,, >> ''w''/2
     46 - l(a,,i,,) = a,,i,, & ((1 << ''w''/2) - 1)
    4747
    4848Some operations also involve an immediate shift operand supplied
     
    5454|| `add_hl` || add halves || r,,i,, = h(a,,i,,) + l(a,,i,,)
    5555|| `xor_hl` || bitwise xor halves || r,,i,, = h(a,,i,,) xor l(a,,i,,)
    56 || `slli<k>` || shift left logical immediate|| r,,i,, = a,,i,, << k ||
    57 || `srli<k>` || shift right logical immediate|| r,,i,, = u(a,,i,,) >> k  ||
    58 || `srai<k>` || shift right arithmetic immediate|| r,,i,, = s(a,,i,,) >> k  ||
     56|| `slli<k>` || shift left logical immediate|| r,,i,, = a,,i,, << ''k'' ||
     57|| `srli<k>` || shift right logical immediate|| r,,i,, = u(a,,i,,) >> ''k''  ||
     58|| `srai<k>` || shift right arithmetic immediate|| r,,i,, = s(a,,i,,) >> ''k''  ||
    5959|| `popcount` || population count || r,,i,, = number of 1 bits in u(a,,i,,) ||
    6060|| `ctz` || count trailing zeroes || r,,i,, = the number of consecutive 0 bits in a,,i,, counting from the right ||
     
    6363== Ternary Operation ==
    6464
    65 This operation has the form `r = simd<N>::op(a, b, c)` for each
    66 operation `op`, where `a`, `b`, and `c` are operand vectors of N bit fields and `r` is
     65This operation has the form `r = simd<w>::op(a, b, c)` for each
     66operation `op`, where `a`, `b`, and `c` are operand vectors of ''w'' bit fields and `r` is
    6767the corresponding result vector.   
    6868