1f4a2713aSLionel Sambuc /*===---- x86intrin.h - X86 intrinsics -------------------------------------=== 2f4a2713aSLionel Sambuc * 3f4a2713aSLionel Sambuc * Permission is hereby granted, free of charge, to any person obtaining a copy 4f4a2713aSLionel Sambuc * of this software and associated documentation files (the "Software"), to deal 5f4a2713aSLionel Sambuc * in the Software without restriction, including without limitation the rights 6f4a2713aSLionel Sambuc * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7f4a2713aSLionel Sambuc * copies of the Software, and to permit persons to whom the Software is 8f4a2713aSLionel Sambuc * furnished to do so, subject to the following conditions: 9f4a2713aSLionel Sambuc * 10f4a2713aSLionel Sambuc * The above copyright notice and this permission notice shall be included in 11f4a2713aSLionel Sambuc * all copies or substantial portions of the Software. 12f4a2713aSLionel Sambuc * 13f4a2713aSLionel Sambuc * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14f4a2713aSLionel Sambuc * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15f4a2713aSLionel Sambuc * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16f4a2713aSLionel Sambuc * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17f4a2713aSLionel Sambuc * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18f4a2713aSLionel Sambuc * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19f4a2713aSLionel Sambuc * THE SOFTWARE. 20f4a2713aSLionel Sambuc * 21f4a2713aSLionel Sambuc *===-----------------------------------------------------------------------=== 22f4a2713aSLionel Sambuc */ 23f4a2713aSLionel Sambuc 24f4a2713aSLionel Sambuc #ifndef __X86INTRIN_H 25f4a2713aSLionel Sambuc #define __X86INTRIN_H 26f4a2713aSLionel Sambuc 27*0a6a1f1dSLionel Sambuc #include <ia32intrin.h> 28*0a6a1f1dSLionel Sambuc 29f4a2713aSLionel Sambuc #include <immintrin.h> 30f4a2713aSLionel Sambuc 31f4a2713aSLionel Sambuc #ifdef __3dNOW__ 32f4a2713aSLionel Sambuc #include <mm3dnow.h> 33f4a2713aSLionel Sambuc #endif 34f4a2713aSLionel Sambuc 35f4a2713aSLionel Sambuc #ifdef __BMI__ 36f4a2713aSLionel Sambuc #include <bmiintrin.h> 37f4a2713aSLionel Sambuc #endif 38f4a2713aSLionel Sambuc 39f4a2713aSLionel Sambuc #ifdef __BMI2__ 40f4a2713aSLionel Sambuc #include <bmi2intrin.h> 41f4a2713aSLionel Sambuc #endif 42f4a2713aSLionel Sambuc 43f4a2713aSLionel Sambuc #ifdef __LZCNT__ 44f4a2713aSLionel Sambuc #include <lzcntintrin.h> 45f4a2713aSLionel Sambuc #endif 46f4a2713aSLionel Sambuc 47f4a2713aSLionel Sambuc #ifdef __POPCNT__ 48f4a2713aSLionel Sambuc #include <popcntintrin.h> 49f4a2713aSLionel Sambuc #endif 50f4a2713aSLionel Sambuc 51f4a2713aSLionel Sambuc #ifdef __RDSEED__ 52f4a2713aSLionel Sambuc #include <rdseedintrin.h> 53f4a2713aSLionel Sambuc #endif 54f4a2713aSLionel Sambuc 55f4a2713aSLionel Sambuc #ifdef __PRFCHW__ 56f4a2713aSLionel Sambuc #include <prfchwintrin.h> 57f4a2713aSLionel Sambuc #endif 58f4a2713aSLionel Sambuc 59f4a2713aSLionel Sambuc #ifdef __SSE4A__ 60f4a2713aSLionel Sambuc #include <ammintrin.h> 61f4a2713aSLionel Sambuc #endif 62f4a2713aSLionel Sambuc 63f4a2713aSLionel Sambuc #ifdef __FMA4__ 64f4a2713aSLionel Sambuc #include <fma4intrin.h> 65f4a2713aSLionel Sambuc #endif 66f4a2713aSLionel Sambuc 67f4a2713aSLionel Sambuc #ifdef __XOP__ 68f4a2713aSLionel Sambuc #include <xopintrin.h> 69f4a2713aSLionel Sambuc #endif 70f4a2713aSLionel Sambuc 71f4a2713aSLionel Sambuc #ifdef __TBM__ 72f4a2713aSLionel Sambuc #include <tbmintrin.h> 73f4a2713aSLionel Sambuc #endif 74f4a2713aSLionel Sambuc 75f4a2713aSLionel Sambuc #ifdef __F16C__ 76f4a2713aSLionel Sambuc #include <f16cintrin.h> 77f4a2713aSLionel Sambuc #endif 78f4a2713aSLionel Sambuc 79*0a6a1f1dSLionel Sambuc /* FIXME: LWP */ 80f4a2713aSLionel Sambuc 81f4a2713aSLionel Sambuc #endif /* __X86INTRIN_H */ 82