Add test for MPX instructions and bnd prefix. Bug #333666.
[valgrind.git] / none / tests / amd64 / Makefile.am
blobd5f9e48a4a267bc779872b8a7bee3c8375eb5537
2 include $(top_srcdir)/Makefile.tool-tests.am
4 dist_noinst_SCRIPTS = filter_cpuid filter_stderr gen_insn_test.pl
6 CLEANFILES = $(addsuffix .c,$(INSN_TESTS))
8 INSN_TESTS = insn_basic insn_mmx insn_sse insn_sse2 insn_fpu
9 if BUILD_SSE3_TESTS
10  INSN_TESTS += insn_sse3
11 endif
12 if BUILD_SSSE3_TESTS
13  INSN_TESTS += insn_ssse3
14 endif
15 if BUILD_PCLMULQDQ_TESTS
16  INSN_TESTS += insn_pclmulqdq
17 endif
19 # Explicitly include insn_sse3 even if ! BUILD_SSE3_TESTS, 
20 # to avoid packaging screwups if 'make dist' is run on a machine
21 # which failed the BUILD_SSE3_TESTS test in configure.in.
23 EXTRA_DIST = \
24         aes.vgtest aes.stdout.exp aes.stderr.exp \
25         amd64locked.vgtest amd64locked.stdout.exp amd64locked.stderr.exp \
26         avx-1.vgtest avx-1.stdout.exp avx-1.stderr.exp \
27         avx2-1.vgtest avx2-1.stdout.exp avx2-1.stderr.exp \
28         asorep.stderr.exp asorep.stdout.exp asorep.vgtest \
29         bmi.stderr.exp bmi.stdout.exp bmi.vgtest \
30         fma.stderr.exp fma.stdout.exp fma.vgtest \
31         bug127521-64.vgtest bug127521-64.stdout.exp bug127521-64.stderr.exp \
32         bug132813-amd64.vgtest bug132813-amd64.stdout.exp \
33         bug132813-amd64.stderr.exp \
34         bug137714-amd64.vgtest bug137714-amd64.stdout.exp \
35         bug137714-amd64.stderr.exp \
36         bug132918.vgtest bug132918.stderr.exp bug132918.stdout.exp \
37         bug132918.stdout.exp-older-glibc \
38         bug156404-amd64.vgtest bug156404-amd64.stdout.exp \
39         bug156404-amd64.stderr.exp \
40         clc.vgtest clc.stdout.exp clc.stderr.exp \
41         crc32.vgtest crc32.stdout.exp crc32.stderr.exp \
42         cmpxchg.vgtest cmpxchg.stdout.exp cmpxchg.stderr.exp \
43         faultstatus.disabled faultstatus.stderr.exp \
44         fcmovnu.vgtest fcmovnu.stderr.exp fcmovnu.stdout.exp \
45         fxtract.vgtest fxtract.stderr.exp fxtract.stdout.exp \
46         fxtract.stdout.exp-older-glibc \
47         $(addsuffix .stderr.exp,$(INSN_TESTS)) \
48         $(addsuffix .stdout.exp,$(INSN_TESTS)) \
49         $(addsuffix .vgtest,$(INSN_TESTS)) \
50         insn_pclmulqdq.vgtest insn_pclmulqdq.stdout.exp \
51         insn_pclmulqdq.stderr.exp \
52         insn_sse3.stdout.exp insn_sse3.stderr.exp insn_sse3.vgtest \
53         insn_ssse3.stdout.exp insn_ssse3.stderr.exp insn_ssse3.vgtest \
54         jrcxz.stderr.exp jrcxz.stdout.exp jrcxz.vgtest \
55         looper.stderr.exp looper.stdout.exp looper.vgtest \
56         loopnel.stderr.exp loopnel.stdout.exp loopnel.vgtest \
57         lzcnt64.stderr.exp lzcnt64.stdout.exp lzcnt64.vgtest \
58         movbe.stderr.exp movbe.stdout.exp movbe.vgtest \
59         mpx.stderr.exp mpx.stdout.exp mpx.vgtest \
60         nan80and64.stderr.exp nan80and64.stdout.exp nan80and64.vgtest \
61         nibz_bennee_mmap.stderr.exp nibz_bennee_mmap.stdout.exp \
62         nibz_bennee_mmap.vgtest \
63         pcmpstr64.stderr.exp pcmpstr64.stdout.exp \
64         pcmpstr64.vgtest \
65         pcmpstr64w.stderr.exp pcmpstr64w.stdout.exp \
66         pcmpstr64w.vgtest \
67         pcmpxstrx64.stderr.exp pcmpxstrx64.stdout.exp \
68         pcmpxstrx64.vgtest \
69         pcmpxstrx64w.stderr.exp pcmpxstrx64w.stdout.exp \
70         pcmpxstrx64w.vgtest \
71         rcl-amd64.vgtest rcl-amd64.stdout.exp rcl-amd64.stderr.exp \
72         redundantRexW.vgtest redundantRexW.stdout.exp \
73         redundantRexW.stderr.exp \
74         smc1.stderr.exp smc1.stdout.exp smc1.vgtest \
75         sbbmisc.stderr.exp sbbmisc.stdout.exp sbbmisc.vgtest \
76         shrld.stderr.exp shrld.stdout.exp shrld.vgtest \
77         ssse3_misaligned.stderr.exp ssse3_misaligned.stdout.exp \
78         ssse3_misaligned.vgtest \
79         sse4-64.stderr.exp sse4-64.stdout.exp sse4-64.vgtest \
80         sse4-64.stdout.exp-older-glibc \
81         slahf-amd64.stderr.exp slahf-amd64.stdout.exp \
82         slahf-amd64.vgtest \
83         tm1.vgtest tm1.stderr.exp tm1.stdout.exp \
84         x87trigOOR.vgtest x87trigOOR.stderr.exp x87trigOOR.stdout.exp \
85         xacq_xrel.stderr.exp xacq_xrel.stdout.exp xacq_xrel.vgtest \
86         xadd.stderr.exp xadd.stdout.exp xadd.vgtest
88 check_PROGRAMS = \
89         allexec \
90         amd64locked \
91         bug127521-64 bug132813-amd64 bug132918 \
92         clc \
93         cmpxchg \
94         $(INSN_TESTS) \
95         nan80and64 \
96         rcl-amd64 \
97         redundantRexW \
98         smc1 \
99         sbbmisc \
100         nibz_bennee_mmap \
101         x87trigOOR \
102         xadd
103 if BUILD_ADDR32_TESTS
104  check_PROGRAMS += asorep
105 endif
106 if BUILD_SSSE3_TESTS
107  check_PROGRAMS += ssse3_misaligned
108 endif
109 if BUILD_LZCNT_TESTS
110  check_PROGRAMS += lzcnt64
111 endif
112 if BUILD_SSE42_TESTS
113  check_PROGRAMS += \
114         pcmpstr64 pcmpxstrx64 sse4-64 crc32 aes \
115         pcmpstr64w pcmpxstrx64w
116 endif
117 if BUILD_AVX_TESTS
118 if BUILD_VPCLMULQDQ_TESTS
119  check_PROGRAMS += avx-1
120 endif
121 endif
122 if BUILD_AVX2_TESTS
123   check_PROGRAMS += avx2-1
124 endif
125 if BUILD_TSX_TESTS
126   check_PROGRAMS += tm1 xacq_xrel
127 endif
128 if BUILD_BMI_TESTS
129  check_PROGRAMS += bmi
130 endif
131 if BUILD_FMA_TESTS
132  check_PROGRAMS += fma
133 endif
134 if BUILD_MOVBE_TESTS
135  check_PROGRAMS += movbe
136 endif
137 if BUILD_MPX_TESTS
138  check_PROGRAMS += mpx
139 endif
142 # DDD: these need to be made to work on Darwin like the x86/ ones were.
143 if ! VGCONF_OS_IS_DARWIN
144    check_PROGRAMS += \
145         bug137714-amd64 \
146         bug156404-amd64 \
147         faultstatus \
148         fcmovnu \
149         fxtract \
150         looper \
151         jrcxz \
152         shrld \
153         slahf-amd64
154 if BUILD_LOOPNEL_TESTS
155    check_PROGRAMS += loopnel
156 endif
157 endif
159 AM_CFLAGS    += @FLAG_M64@
160 AM_CXXFLAGS  += @FLAG_M64@
161 AM_CCASFLAGS += @FLAG_M64@
163 allexec_CFLAGS          = $(AM_CFLAGS) @FLAG_W_NO_NONNULL@
165 # generic C ones
166 amd64locked_CFLAGS      = $(AM_CFLAGS) -O
167 bug132918_LDADD         = -lm
168 fxtract_CFLAGS          = $(AM_CFLAGS) @FLAG_W_NO_OVERFLOW@
169 insn_basic_SOURCES      = insn_basic.def
170 insn_basic_LDADD        = -lm
171 insn_mmx_SOURCES        = insn_mmx.def
172 insn_mmx_LDADD          = -lm
173 insn_sse_SOURCES        = insn_sse.def
174 insn_sse_LDADD          = -lm
175 insn_sse2_SOURCES       = insn_sse2.def
176 insn_sse2_LDADD         = -lm
177 insn_sse3_SOURCES       = insn_sse3.def
178 insn_sse3_LDADD         = -lm
179 insn_ssse3_SOURCES      = insn_ssse3.def
180 insn_ssse3_LDADD        = -lm
181 insn_fpu_SOURCES        = insn_fpu.def
182 insn_fpu_LDADD          = -lm
183 insn_pclmulqdq_SOURCES  = insn_pclmulqdq.def
184 fxtract_LDADD           = -lm
186 .def.c: $(srcdir)/gen_insn_test.pl
187         $(PERL) $(srcdir)/gen_insn_test.pl < $< > $@