|
3923 | 3923 | // CHECK_ZNVER4_M64: #define __znver4 1 |
3924 | 3924 | // CHECK_ZNVER4_M64: #define __znver4__ 1 |
3925 | 3925 |
|
| 3926 | +// RUN: %clang -march=znver5 -m32 -E -dM %s -o - 2>&1 \ |
| 3927 | +// RUN: -target i386-unknown-linux \ |
| 3928 | +// RUN: | FileCheck -match-full-lines %s -check-prefix=CHECK_ZNVER5_M32 |
| 3929 | +// CHECK_ZNVER5_M32-NOT: #define __3dNOW_A__ 1 |
| 3930 | +// CHECK_ZNVER5_M32-NOT: #define __3dNOW__ 1 |
| 3931 | +// CHECK_ZNVER5_M32: #define __ADX__ 1 |
| 3932 | +// CHECK_ZNVER5_M32: #define __AES__ 1 |
| 3933 | +// CHECK_ZNVER5_M32: #define __AVX2__ 1 |
| 3934 | +// CHECK_ZNVER5_M32: #define __AVX512BF16__ 1 |
| 3935 | +// CHECK_ZNVER5_M32: #define __AVX512BITALG__ 1 |
| 3936 | +// CHECK_ZNVER5_M32: #define __AVX512BW__ 1 |
| 3937 | +// CHECK_ZNVER5_M32: #define __AVX512CD__ 1 |
| 3938 | +// CHECK_ZNVER5_M32: #define __AVX512DQ__ 1 |
| 3939 | +// CHECK_ZNVER5_M32: #define __AVX512F__ 1 |
| 3940 | +// CHECK_ZNVER5_M32: #define __AVX512IFMA__ 1 |
| 3941 | +// CHECK_ZNVER5_M32: #define __AVX512VBMI2__ 1 |
| 3942 | +// CHECK_ZNVER5_M32: #define __AVX512VBMI__ 1 |
| 3943 | +// CHECK_ZNVER5_M32: #define __AVX512VL__ 1 |
| 3944 | +// CHECK_ZNVER5_M32: #define __AVX512VNNI__ 1 |
| 3945 | +// CHECK_ZNVER5_M32: #define __AVX512VP2INTERSECT__ 1 |
| 3946 | +// CHECK_ZNVER5_M32: #define __AVX512VPOPCNTDQ__ 1 |
| 3947 | +// CHECK_ZNVER5_M32: #define __AVXVNNI__ 1 |
| 3948 | +// CHECK_ZNVER5_M32: #define __AVX__ 1 |
| 3949 | +// CHECK_ZNVER5_M32: #define __BMI2__ 1 |
| 3950 | +// CHECK_ZNVER5_M32: #define __BMI__ 1 |
| 3951 | +// CHECK_ZNVER5_M32: #define __CLFLUSHOPT__ 1 |
| 3952 | +// CHECK_ZNVER5_M32: #define __CLWB__ 1 |
| 3953 | +// CHECK_ZNVER5_M32: #define __CLZERO__ 1 |
| 3954 | +// CHECK_ZNVER5_M32: #define __F16C__ 1 |
| 3955 | +// CHECK_ZNVER5_M32-NOT: #define __FMA4__ 1 |
| 3956 | +// CHECK_ZNVER5_M32: #define __FMA__ 1 |
| 3957 | +// CHECK_ZNVER5_M32: #define __FSGSBASE__ 1 |
| 3958 | +// CHECK_ZNVER5_M32: #define __GFNI__ 1 |
| 3959 | +// CHECK_ZNVER5_M32: #define __LZCNT__ 1 |
| 3960 | +// CHECK_ZNVER5_M32: #define __MMX__ 1 |
| 3961 | +// CHECK_ZNVER5_M32: #define __MOVDIR64B__ 1 |
| 3962 | +// CHECK_ZNVER5_M32: #define __MOVDIRI__ 1 |
| 3963 | +// CHECK_ZNVER5_M32: #define __PCLMUL__ 1 |
| 3964 | +// CHECK_ZNVER5_M32: #define __PKU__ 1 |
| 3965 | +// CHECK_ZNVER5_M32: #define __POPCNT__ 1 |
| 3966 | +// CHECK_ZNVER5_M32: #define __PREFETCHI__ 1 |
| 3967 | +// CHECK_ZNVER5_M32: #define __PRFCHW__ 1 |
| 3968 | +// CHECK_ZNVER5_M32: #define __RDPID__ 1 |
| 3969 | +// CHECK_ZNVER5_M32: #define __RDPRU__ 1 |
| 3970 | +// CHECK_ZNVER5_M32: #define __RDRND__ 1 |
| 3971 | +// CHECK_ZNVER5_M32: #define __RDSEED__ 1 |
| 3972 | +// CHECK_ZNVER5_M32: #define __SHA__ 1 |
| 3973 | +// CHECK_ZNVER5_M32: #define __SSE2_MATH__ 1 |
| 3974 | +// CHECK_ZNVER5_M32: #define __SSE2__ 1 |
| 3975 | +// CHECK_ZNVER5_M32: #define __SSE3__ 1 |
| 3976 | +// CHECK_ZNVER5_M32: #define __SSE4A__ 1 |
| 3977 | +// CHECK_ZNVER5_M32: #define __SSE4_1__ 1 |
| 3978 | +// CHECK_ZNVER5_M32: #define __SSE4_2__ 1 |
| 3979 | +// CHECK_ZNVER5_M32: #define __SSE_MATH__ 1 |
| 3980 | +// CHECK_ZNVER5_M32: #define __SSE__ 1 |
| 3981 | +// CHECK_ZNVER5_M32: #define __SSSE3__ 1 |
| 3982 | +// CHECK_ZNVER5_M32-NOT: #define __TBM__ 1 |
| 3983 | +// CHECK_ZNVER5_M32: #define __WBNOINVD__ 1 |
| 3984 | +// CHECK_ZNVER5_M32-NOT: #define __XOP__ 1 |
| 3985 | +// CHECK_ZNVER5_M32: #define __XSAVEC__ 1 |
| 3986 | +// CHECK_ZNVER5_M32: #define __XSAVEOPT__ 1 |
| 3987 | +// CHECK_ZNVER5_M32: #define __XSAVES__ 1 |
| 3988 | +// CHECK_ZNVER5_M32: #define __XSAVE__ 1 |
| 3989 | +// CHECK_ZNVER5_M32: #define __i386 1 |
| 3990 | +// CHECK_ZNVER5_M32: #define __i386__ 1 |
| 3991 | +// CHECK_ZNVER5_M32: #define __tune_znver5__ 1 |
| 3992 | +// CHECK_ZNVER5_M32: #define __znver5 1 |
| 3993 | +// CHECK_ZNVER5_M32: #define __znver5__ 1 |
| 3994 | + |
| 3995 | +// RUN: %clang -march=znver5 -m64 -E -dM %s -o - 2>&1 \ |
| 3996 | +// RUN: -target i386-unknown-linux \ |
| 3997 | +// RUN: | FileCheck -match-full-lines %s -check-prefix=CHECK_ZNVER5_M64 |
| 3998 | +// CHECK_ZNVER5_M64-NOT: #define __3dNOW_A__ 1 |
| 3999 | +// CHECK_ZNVER5_M64-NOT: #define __3dNOW__ 1 |
| 4000 | +// CHECK_ZNVER5_M64: #define __ADX__ 1 |
| 4001 | +// CHECK_ZNVER5_M64: #define __AES__ 1 |
| 4002 | +// CHECK_ZNVER5_M64: #define __AVX2__ 1 |
| 4003 | +// CHECK_ZNVER5_M64: #define __AVX512BF16__ 1 |
| 4004 | +// CHECK_ZNVER5_M64: #define __AVX512BITALG__ 1 |
| 4005 | +// CHECK_ZNVER5_M64: #define __AVX512BW__ 1 |
| 4006 | +// CHECK_ZNVER5_M64: #define __AVX512CD__ 1 |
| 4007 | +// CHECK_ZNVER5_M64: #define __AVX512DQ__ 1 |
| 4008 | +// CHECK_ZNVER5_M64: #define __AVX512F__ 1 |
| 4009 | +// CHECK_ZNVER5_M64: #define __AVX512IFMA__ 1 |
| 4010 | +// CHECK_ZNVER5_M64: #define __AVX512VBMI2__ 1 |
| 4011 | +// CHECK_ZNVER5_M64: #define __AVX512VBMI__ 1 |
| 4012 | +// CHECK_ZNVER5_M64: #define __AVX512VL__ 1 |
| 4013 | +// CHECK_ZNVER5_M64: #define __AVX512VNNI__ 1 |
| 4014 | +// CHECK_ZNVER5_M64: #define __AVX512VP2INTERSECT__ 1 |
| 4015 | +// CHECK_ZNVER5_M64: #define __AVX512VPOPCNTDQ__ 1 |
| 4016 | +// CHECK_ZNVER5_M64: #define __AVXVNNI__ 1 |
| 4017 | +// CHECK_ZNVER5_M64: #define __AVX__ 1 |
| 4018 | +// CHECK_ZNVER5_M64: #define __BMI2__ 1 |
| 4019 | +// CHECK_ZNVER5_M64: #define __BMI__ 1 |
| 4020 | +// CHECK_ZNVER5_M64: #define __CLFLUSHOPT__ 1 |
| 4021 | +// CHECK_ZNVER5_M64: #define __CLWB__ 1 |
| 4022 | +// CHECK_ZNVER5_M64: #define __CLZERO__ 1 |
| 4023 | +// CHECK_ZNVER5_M64: #define __F16C__ 1 |
| 4024 | +// CHECK_ZNVER5_M64-NOT: #define __FMA4__ 1 |
| 4025 | +// CHECK_ZNVER5_M64: #define __FMA__ 1 |
| 4026 | +// CHECK_ZNVER5_M64: #define __FSGSBASE__ 1 |
| 4027 | +// CHECK_ZNVER5_M64: #define __GFNI__ 1 |
| 4028 | +// CHECK_ZNVER5_M64: #define __LZCNT__ 1 |
| 4029 | +// CHECK_ZNVER5_M64: #define __MMX__ 1 |
| 4030 | +// CHECK_ZNVER5_M64: #define __MOVDIR64B__ 1 |
| 4031 | +// CHECK_ZNVER5_M64: #define __MOVDIRI__ 1 |
| 4032 | +// CHECK_ZNVER5_M64: #define __PCLMUL__ 1 |
| 4033 | +// CHECK_ZNVER5_M64: #define __PKU__ 1 |
| 4034 | +// CHECK_ZNVER5_M64: #define __POPCNT__ 1 |
| 4035 | +// CHECK_ZNVER5_M64: #define __PREFETCHI__ 1 |
| 4036 | +// CHECK_ZNVER5_M64: #define __PRFCHW__ 1 |
| 4037 | +// CHECK_ZNVER5_M64: #define __RDPID__ 1 |
| 4038 | +// CHECK_ZNVER5_M64: #define __RDPRU__ 1 |
| 4039 | +// CHECK_ZNVER5_M64: #define __RDRND__ 1 |
| 4040 | +// CHECK_ZNVER5_M64: #define __RDSEED__ 1 |
| 4041 | +// CHECK_ZNVER5_M64: #define __SHA__ 1 |
| 4042 | +// CHECK_ZNVER5_M64: #define __SSE2_MATH__ 1 |
| 4043 | +// CHECK_ZNVER5_M64: #define __SSE2__ 1 |
| 4044 | +// CHECK_ZNVER5_M64: #define __SSE3__ 1 |
| 4045 | +// CHECK_ZNVER5_M64: #define __SSE4A__ 1 |
| 4046 | +// CHECK_ZNVER5_M64: #define __SSE4_1__ 1 |
| 4047 | +// CHECK_ZNVER5_M64: #define __SSE4_2__ 1 |
| 4048 | +// CHECK_ZNVER5_M64: #define __SSE_MATH__ 1 |
| 4049 | +// CHECK_ZNVER5_M64: #define __SSE__ 1 |
| 4050 | +// CHECK_ZNVER5_M64: #define __SSSE3__ 1 |
| 4051 | +// CHECK_ZNVER5_M64-NOT: #define __TBM__ 1 |
| 4052 | +// CHECK_ZNVER5_M64: #define __VAES__ 1 |
| 4053 | +// CHECK_ZNVER5_M64: #define __VPCLMULQDQ__ 1 |
| 4054 | +// CHECK_ZNVER5_M64: #define __WBNOINVD__ 1 |
| 4055 | +// CHECK_ZNVER5_M64-NOT: #define __XOP__ 1 |
| 4056 | +// CHECK_ZNVER5_M64: #define __XSAVEC__ 1 |
| 4057 | +// CHECK_ZNVER5_M64: #define __XSAVEOPT__ 1 |
| 4058 | +// CHECK_ZNVER5_M64: #define __XSAVES__ 1 |
| 4059 | +// CHECK_ZNVER5_M64: #define __XSAVE__ 1 |
| 4060 | +// CHECK_ZNVER5_M64: #define __amd64 1 |
| 4061 | +// CHECK_ZNVER5_M64: #define __amd64__ 1 |
| 4062 | +// CHECK_ZNVER5_M64: #define __tune_znver5__ 1 |
| 4063 | +// CHECK_ZNVER5_M64: #define __x86_64 1 |
| 4064 | +// CHECK_ZNVER5_M64: #define __x86_64__ 1 |
| 4065 | +// CHECK_ZNVER5_M64: #define __znver5 1 |
| 4066 | +// CHECK_ZNVER5_M64: #define __znver5__ 1 |
| 4067 | + |
3926 | 4068 | // End X86/GCC/Linux tests ------------------ |
3927 | 4069 |
|
3928 | 4070 | // Begin PPC/GCC/Linux tests ---------------- |
|
0 commit comments