Advertisement
Guest User

Untitled

a guest
Aug 10th, 2017
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.65 KB | None | 0 0
  1. #if __SSSE3__ == 0
  2.     #error wrong target isa
  3. #endif
  4.  
  5. #include <stddef.h>
  6.  
  7. int main(int, char**) {
  8.     size_t const rep = size_t(5e8);
  9.  
  10.     for (size_t i = 0; i < rep; ++i) {
  11.  
  12. #if COISSUE
  13.         asm volatile (
  14.             "pshufb %%xmm1,  %%xmm0\n\t"
  15.             "pshufb %%xmm2,  %%xmm0\n\t"
  16.             "pshufb %%xmm3,  %%xmm0\n\t"
  17.             "pshufb %%xmm4,  %%xmm0\n\t"
  18.             "pshufb %%xmm5,  %%xmm0\n\t"
  19.             "pshufb %%xmm6,  %%xmm0\n\t"
  20.             "pshufb %%xmm7,  %%xmm0\n\t"
  21.             "pshufb %%xmm8,  %%xmm0\n\t"
  22.             "pshufb %%xmm9,  %%xmm0\n\t"
  23.             "pshufb %%xmm10, %%xmm0\n\t"
  24.             "pshufb %%xmm11, %%xmm0\n\t"
  25.             "pshufb %%xmm12, %%xmm0\n\t"
  26.             "pshufb %%xmm13, %%xmm0\n\t"
  27.             "pshufb %%xmm14, %%xmm0\n\t"
  28.             "pshufb %%xmm15, %%xmm0\n\t"
  29.             "pshufb %%xmm0,  %%xmm0"
  30.             : : : "memory");
  31.  
  32. #else
  33.         asm volatile (
  34.             "pshufb %%xmm1,  %%xmm0\n\t"
  35.             "pshufb %%xmm2,  %%xmm0\n\t"
  36.             "pshufb %%xmm3,  %%xmm0\n\t"
  37.             "pshufb %%xmm4,  %%xmm0\n\t"
  38.             "pshufb %%xmm5,  %%xmm0\n\t"
  39.             "pshufb %%xmm6,  %%xmm0\n\t"
  40.             "pshufb %%xmm7,  %%xmm0\n\t"
  41.             "pshufb %%xmm8,  %%xmm0\n\t"
  42.             "pshufb %%xmm9,  %%xmm0\n\t"
  43.             "pshufb %%xmm10, %%xmm0\n\t"
  44.             "pshufb %%xmm11, %%xmm0\n\t"
  45.             "pshufb %%xmm12, %%xmm0\n\t"
  46.             "pshufb %%xmm13, %%xmm0\n\t"
  47.             "pshufb %%xmm14, %%xmm0\n\t"
  48.             "pshufb %%xmm15, %%xmm0\n\t"
  49.             "pshufb %%xmm0,  %%xmm0"
  50.             : : : "memory");
  51.  
  52. #endif
  53.     }
  54.  
  55.     return 0;
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement