Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #if __SSSE3__ == 0
- #error wrong target isa
- #endif
- #include <stddef.h>
- int main(int, char**) {
- size_t const rep = size_t(5e8);
- for (size_t i = 0; i < rep; ++i) {
- #if COISSUE
- asm volatile (
- "pshufb %%xmm1, %%xmm0\n\t"
- "pshufb %%xmm2, %%xmm0\n\t"
- "pshufb %%xmm3, %%xmm0\n\t"
- "pshufb %%xmm4, %%xmm0\n\t"
- "pshufb %%xmm5, %%xmm0\n\t"
- "pshufb %%xmm6, %%xmm0\n\t"
- "pshufb %%xmm7, %%xmm0\n\t"
- "pshufb %%xmm8, %%xmm0\n\t"
- "pshufb %%xmm9, %%xmm0\n\t"
- "pshufb %%xmm10, %%xmm0\n\t"
- "pshufb %%xmm11, %%xmm0\n\t"
- "pshufb %%xmm12, %%xmm0\n\t"
- "pshufb %%xmm13, %%xmm0\n\t"
- "pshufb %%xmm14, %%xmm0\n\t"
- "pshufb %%xmm15, %%xmm0\n\t"
- "pshufb %%xmm0, %%xmm0"
- : : : "memory");
- #else
- asm volatile (
- "pshufb %%xmm1, %%xmm0\n\t"
- "pshufb %%xmm2, %%xmm0\n\t"
- "pshufb %%xmm3, %%xmm0\n\t"
- "pshufb %%xmm4, %%xmm0\n\t"
- "pshufb %%xmm5, %%xmm0\n\t"
- "pshufb %%xmm6, %%xmm0\n\t"
- "pshufb %%xmm7, %%xmm0\n\t"
- "pshufb %%xmm8, %%xmm0\n\t"
- "pshufb %%xmm9, %%xmm0\n\t"
- "pshufb %%xmm10, %%xmm0\n\t"
- "pshufb %%xmm11, %%xmm0\n\t"
- "pshufb %%xmm12, %%xmm0\n\t"
- "pshufb %%xmm13, %%xmm0\n\t"
- "pshufb %%xmm14, %%xmm0\n\t"
- "pshufb %%xmm15, %%xmm0\n\t"
- "pshufb %%xmm0, %%xmm0"
- : : : "memory");
- #endif
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement