title: Efficient row column transformation using SIMD intrinsics
body: <p>I am a beginner in SIMD programming. I would like to process my data as follows:</p>
  
  <p>Consider I have 4 simd variables (<code>__m128i</code>) with the data as follows:</p>
  
  <pre><code>__m128i a = {a1, a2, a3, a4}
  __m128i b = {b1, b2, b3, b4}
  __m128i c = {c1, c2, c3, c4}
  __m128i d = {d1, d2, d3, d4}
  </code></pre>
  
  <p>Now I would like to initialize Xi as follows:  </p>
  
  <pre><code>__m128i x1 = {a1, b1, c1, d1}
  __m128i x2 = {a2, b2, c2, d2}
  __m128i x3 = {a3, b3, c3, d3}
  __m128i x4 = {a4, b4, c4, d4}
  </code></pre>
  
  <p>Can anybody suggest to me how can I do this efficiently?</p>