Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void deinterleave_mm_split(int *a, int len)
- {
- if (0 == len % 4)
- {
- deinterleave_mm_split(&a[0], len/2);
- deinterleave_mm_split(&a[len/2], len/2);
- for (int i = len/4; i < len/2; i++)
- {
- int t = a[i];
- a[i] = a[i+len/4];
- a[i+len/4] = t;
- }
- }
- else
- {
- deinterleave_mm(a, len);
- }
- }
- void interleave_mm_split(int *a, int len)
- {
- if (0 == len % 4)
- {
- for (int i = len/4; i < len/2; i++)
- {
- int t = a[i];
- a[i] = a[i+len/4];
- a[i+len/4] = t;
- }
- interleave_mm_split(&a[0], len/2);
- interleave_mm_split(&a[len/2], len/2);
- }
- else
- {
- interleave_mm(a, len);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement