GNU Radio 3.6.1 C++ API
volk_machines.h
Go to the documentation of this file.
1 
2 
3 /* this file was generated by volk template utils, do not edit! */
4 
5 /*
6  * Copyright 2011-2012 Free Software Foundation, Inc.
7  *
8  * This file is part of GNU Radio
9  *
10  * GNU Radio is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 3, or (at your option)
13  * any later version.
14  *
15  * GNU Radio is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with GNU Radio; see the file COPYING. If not, write to
22  * the Free Software Foundation, Inc., 51 Franklin Street,
23  * Boston, MA 02110-1301, USA.
24  */
25 
26 #ifndef INCLUDED_LIBVOLK_MACHINES_H
27 #define INCLUDED_LIBVOLK_MACHINES_H
28 
29 #include <volk/volk_common.h>
30 #include <volk/volk_typedefs.h>
31 
33 
34 struct volk_machine {
35  const unsigned int caps; //capabilities (i.e., archs compiled into this machine, in the volk_get_lvarch format)
36  const char *name;
37  const unsigned int alignment; //the maximum byte alignment required for functions in this library
64  const char *volk_32u_byteswap_a_indices[19];
144  const char *volk_32u_popcnt_a_indices[19];
294  const char *volk_64u_popcnt_a_indices[19];
568 };
569 
570 #ifdef LV_MACHINE_GENERIC_ORC
571 extern struct volk_machine volk_machine_generic_orc;
572 #endif
573 #ifdef LV_MACHINE_GENERIC
574 extern struct volk_machine volk_machine_generic;
575 #endif
576 #ifdef LV_MACHINE_NEON_ORC
577 extern struct volk_machine volk_machine_neon_orc;
578 #endif
579 #ifdef LV_MACHINE_NEON
580 extern struct volk_machine volk_machine_neon;
581 #endif
582 #ifdef LV_MACHINE_SSE2_32_ORC
583 extern struct volk_machine volk_machine_sse2_32_orc;
584 #endif
585 #ifdef LV_MACHINE_SSE2_32
586 extern struct volk_machine volk_machine_sse2_32;
587 #endif
588 #ifdef LV_MACHINE_SSE2_64_ORC
589 extern struct volk_machine volk_machine_sse2_64_orc;
590 #endif
591 #ifdef LV_MACHINE_SSE2_64
592 extern struct volk_machine volk_machine_sse2_64;
593 #endif
594 #ifdef LV_MACHINE_SSE2_ORC
595 extern struct volk_machine volk_machine_sse2_orc;
596 #endif
597 #ifdef LV_MACHINE_SSE2
598 extern struct volk_machine volk_machine_sse2;
599 #endif
600 #ifdef LV_MACHINE_SSE3_32_ORC
601 extern struct volk_machine volk_machine_sse3_32_orc;
602 #endif
603 #ifdef LV_MACHINE_SSE3_32
604 extern struct volk_machine volk_machine_sse3_32;
605 #endif
606 #ifdef LV_MACHINE_SSE3_64_ORC
607 extern struct volk_machine volk_machine_sse3_64_orc;
608 #endif
609 #ifdef LV_MACHINE_SSE3_64
610 extern struct volk_machine volk_machine_sse3_64;
611 #endif
612 #ifdef LV_MACHINE_SSSE3_32_ORC
613 extern struct volk_machine volk_machine_ssse3_32_orc;
614 #endif
615 #ifdef LV_MACHINE_SSSE3_32
616 extern struct volk_machine volk_machine_ssse3_32;
617 #endif
618 #ifdef LV_MACHINE_SSSE3_64_ORC
619 extern struct volk_machine volk_machine_ssse3_64_orc;
620 #endif
621 #ifdef LV_MACHINE_SSSE3_64
622 extern struct volk_machine volk_machine_ssse3_64;
623 #endif
624 #ifdef LV_MACHINE_SSE4_A_32_ORC
625 extern struct volk_machine volk_machine_sse4_a_32_orc;
626 #endif
627 #ifdef LV_MACHINE_SSE4_A_32
628 extern struct volk_machine volk_machine_sse4_a_32;
629 #endif
630 #ifdef LV_MACHINE_SSE4_A_64_ORC
631 extern struct volk_machine volk_machine_sse4_a_64_orc;
632 #endif
633 #ifdef LV_MACHINE_SSE4_A_64
634 extern struct volk_machine volk_machine_sse4_a_64;
635 #endif
636 #ifdef LV_MACHINE_SSE4_1_32_ORC
637 extern struct volk_machine volk_machine_sse4_1_32_orc;
638 #endif
639 #ifdef LV_MACHINE_SSE4_1_32
640 extern struct volk_machine volk_machine_sse4_1_32;
641 #endif
642 #ifdef LV_MACHINE_SSE4_1_64_ORC
643 extern struct volk_machine volk_machine_sse4_1_64_orc;
644 #endif
645 #ifdef LV_MACHINE_SSE4_1_64
646 extern struct volk_machine volk_machine_sse4_1_64;
647 #endif
648 #ifdef LV_MACHINE_SSE4_2_32_ORC
649 extern struct volk_machine volk_machine_sse4_2_32_orc;
650 #endif
651 #ifdef LV_MACHINE_SSE4_2_32
652 extern struct volk_machine volk_machine_sse4_2_32;
653 #endif
654 #ifdef LV_MACHINE_SSE4_2_64_ORC
655 extern struct volk_machine volk_machine_sse4_2_64_orc;
656 #endif
657 #ifdef LV_MACHINE_SSE4_2_64
658 extern struct volk_machine volk_machine_sse4_2_64;
659 #endif
660 #ifdef LV_MACHINE_AVX_32_ORC
661 extern struct volk_machine volk_machine_avx_32_orc;
662 #endif
663 #ifdef LV_MACHINE_AVX_32
664 extern struct volk_machine volk_machine_avx_32;
665 #endif
666 #ifdef LV_MACHINE_AVX_64_ORC
667 extern struct volk_machine volk_machine_avx_64_orc;
668 #endif
669 #ifdef LV_MACHINE_AVX_64
670 extern struct volk_machine volk_machine_avx_64;
671 #endif
672 #ifdef LV_MACHINE_AVX_ORC
673 extern struct volk_machine volk_machine_avx_orc;
674 #endif
675 #ifdef LV_MACHINE_AVX
676 extern struct volk_machine volk_machine_avx;
677 #endif
678 #ifdef LV_MACHINE_ALTIVEC
679 extern struct volk_machine volk_machine_altivec;
680 #endif
681 
683 
684 #endif //INCLUDED_LIBVOLK_MACHINES_H