• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1
2include $(top_srcdir)/Makefile.tool-tests.am
3
4dist_noinst_SCRIPTS = filter_cpuid filter_inf_nan filter_stderr gen_insn_test.pl
5
6CLEANFILES = $(addsuffix .c,$(INSN_TESTS))
7
8INSN_TESTS = insn_basic insn_mmx insn_sse insn_sse2 insn_fpu
9if BUILD_SSE3_TESTS
10 INSN_TESTS += insn_sse3
11endif
12if BUILD_SSSE3_TESTS
13 INSN_TESTS += insn_ssse3
14endif
15if BUILD_PCLMULQDQ_TESTS
16 INSN_TESTS += insn_pclmulqdq
17endif
18
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.
22
23EXTRA_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	bt_flags.stderr.exp bt_flags.stdout.exp bt_flags.vgtest \
31	fma.stderr.exp fma.stdout.exp fma.vgtest \
32	bug127521-64.vgtest bug127521-64.stdout.exp bug127521-64.stderr.exp \
33	bug132813-amd64.vgtest bug132813-amd64.stdout.exp \
34	bug132813-amd64.stderr.exp \
35	bug137714-amd64.vgtest bug137714-amd64.stdout.exp \
36	bug137714-amd64.stderr.exp \
37	bug132918.vgtest bug132918.stderr.exp bug132918.stdout.exp \
38	bug132918.stdout.exp-older-glibc \
39	bug156404-amd64.vgtest bug156404-amd64.stdout.exp \
40	bug156404-amd64.stderr.exp \
41	cet_nops.vgtest cet_nops.stdout.exp cet_nops.stderr.exp \
42	clc.vgtest clc.stdout.exp clc.stderr.exp \
43	crc32.vgtest crc32.stdout.exp crc32.stderr.exp \
44	cmpxchg.vgtest cmpxchg.stdout.exp cmpxchg.stderr.exp \
45	faultstatus.disabled faultstatus.stderr.exp \
46	fb_test_amd64.vgtest \
47	fb_test_amd64.stderr.exp fb_test_amd64.stdout.exp \
48	fb_test_amd64.h fb_test_amd64_muldiv.h fb_test_amd64_shift.h \
49	fcmovnu.vgtest fcmovnu.stderr.exp fcmovnu.stdout.exp \
50	fma4.vgtest fma4.stdout.exp fma4.stderr.exp \
51	fxtract.vgtest fxtract.stderr.exp fxtract.stdout.exp \
52	fxtract.stdout.exp-older-glibc \
53	getseg.stdout.exp getseg.stderr.exp getseg.vgtest \
54	$(addsuffix .stderr.exp,$(INSN_TESTS)) \
55	$(addsuffix .stdout.exp,$(INSN_TESTS)) \
56	$(addsuffix .vgtest,$(INSN_TESTS)) \
57	insn_pclmulqdq.vgtest insn_pclmulqdq.stdout.exp \
58	insn_pclmulqdq.stderr.exp \
59	insn_sse3.stdout.exp insn_sse3.stderr.exp insn_sse3.vgtest \
60	insn_ssse3.stdout.exp insn_ssse3.stderr.exp insn_ssse3.vgtest \
61	jrcxz.stderr.exp jrcxz.stdout.exp jrcxz.vgtest \
62	looper.stderr.exp looper.stdout.exp looper.vgtest \
63	loopnel.stderr.exp loopnel.stdout.exp loopnel.vgtest \
64	lzcnt64.stderr.exp lzcnt64.stdout.exp lzcnt64.vgtest \
65	movbe.stderr.exp movbe.stdout.exp movbe.vgtest \
66	mpx.stderr.exp mpx.stdout.exp mpx.vgtest \
67	nan80and64.stderr.exp nan80and64.stdout.exp nan80and64.vgtest \
68	nibz_bennee_mmap.stderr.exp nibz_bennee_mmap.stdout.exp \
69	nibz_bennee_mmap.vgtest \
70	pcmpstr64.stderr.exp pcmpstr64.stdout.exp \
71	pcmpstr64.vgtest \
72	pcmpstr64w.stderr.exp pcmpstr64w.stdout.exp \
73	pcmpstr64w.vgtest \
74	pcmpxstrx64.stderr.exp pcmpxstrx64.stdout.exp \
75	pcmpxstrx64.vgtest \
76	pcmpxstrx64w.stderr.exp pcmpxstrx64w.stdout.exp \
77	pcmpxstrx64w.vgtest \
78	rcl-amd64.vgtest rcl-amd64.stdout.exp rcl-amd64.stderr.exp \
79	redundantRexW.vgtest redundantRexW.stdout.exp \
80	redundantRexW.stderr.exp \
81	smc1.stderr.exp smc1.stdout.exp smc1.vgtest \
82	sbbmisc.stderr.exp sbbmisc.stdout.exp sbbmisc.vgtest \
83	shrld.stderr.exp shrld.stdout.exp shrld.vgtest \
84	ssse3_misaligned.stderr.exp ssse3_misaligned.stdout.exp \
85	ssse3_misaligned.vgtest \
86	sse4-64.stderr.exp sse4-64.stdout.exp sse4-64.vgtest \
87	sse4-64.stdout.exp-older-glibc \
88	slahf-amd64.stderr.exp slahf-amd64.stdout.exp \
89	slahf-amd64.vgtest \
90	tm1.vgtest tm1.stderr.exp tm1.stdout.exp \
91	x87trigOOR.vgtest x87trigOOR.stderr.exp x87trigOOR.stdout.exp \
92	xacq_xrel.stderr.exp xacq_xrel.stdout.exp xacq_xrel.vgtest \
93	xadd.stderr.exp xadd.stdout.exp xadd.vgtest
94
95check_PROGRAMS = \
96	allexec \
97	amd64locked \
98	bt_flags \
99	bug127521-64 bug132813-amd64 bug132918 bug137714-amd64 \
100	cet_nops \
101	clc \
102	cmpxchg \
103	getseg \
104	$(INSN_TESTS) \
105	nan80and64 \
106	rcl-amd64 \
107	redundantRexW \
108	smc1 \
109	sbbmisc \
110	nibz_bennee_mmap \
111	x87trigOOR \
112	xadd
113if BUILD_ADDR32_TESTS
114 check_PROGRAMS += asorep
115endif
116if BUILD_ADX_TESTS
117  check_PROGRAMS += fb_test_amd64
118endif
119if BUILD_AVX_TESTS
120if BUILD_VPCLMULQDQ_TESTS
121  check_PROGRAMS += avx-1
122endif
123if BUILD_FMA4_TESTS
124  check_PROGRAMS += fma4
125endif
126endif
127if BUILD_AVX2_TESTS
128if !COMPILER_IS_ICC
129  check_PROGRAMS += avx2-1
130endif
131endif
132if BUILD_SSSE3_TESTS
133 check_PROGRAMS += ssse3_misaligned
134endif
135if BUILD_LZCNT_TESTS
136 check_PROGRAMS += lzcnt64
137endif
138if BUILD_MOVBE_TESTS
139 check_PROGRAMS += movbe
140endif
141if BUILD_SSE42_TESTS
142 check_PROGRAMS += \
143	pcmpstr64 pcmpxstrx64 sse4-64 crc32 aes \
144	pcmpstr64w pcmpxstrx64w
145endif
146if BUILD_TSX_TESTS
147  check_PROGRAMS += tm1 xacq_xrel
148endif
149if BUILD_BMI_TESTS
150 check_PROGRAMS += bmi
151endif
152if BUILD_FMA_TESTS
153 check_PROGRAMS += fma
154endif
155if BUILD_MPX_TESTS
156 check_PROGRAMS += mpx
157endif
158
159
160# DDD: these need to be made to work on Darwin like the x86/ ones were.
161if ! VGCONF_OS_IS_DARWIN
162   check_PROGRAMS += \
163	bug156404-amd64 \
164	faultstatus \
165	fcmovnu \
166	fxtract \
167	looper \
168	jrcxz \
169	shrld \
170	slahf-amd64
171if BUILD_LOOPNEL_TESTS
172   check_PROGRAMS += loopnel
173endif
174endif
175
176AM_CFLAGS    += @FLAG_M64@
177AM_CXXFLAGS  += @FLAG_M64@
178AM_CCASFLAGS += @FLAG_M64@
179
180allexec_CFLAGS		= $(AM_CFLAGS) @FLAG_W_NO_NONNULL@
181
182# generic C ones
183amd64locked_CFLAGS	= $(AM_CFLAGS) -O
184bug132918_LDADD		= -lm
185cmpxchg_CFLAGS		= $(AM_CFLAGS) @FLAG_NO_PIE@
186fb_test_amd64_CFLAGS	= $(AM_CFLAGS) -O -fno-strict-aliasing
187fb_test_amd64_LDADD	= -lm
188fcmovnu_CFLAGS		= $(AM_CFLAGS) @FLAG_NO_PIE@
189fxtract_CFLAGS		= $(AM_CFLAGS) @FLAG_W_NO_OVERFLOW@ @FLAG_NO_PIE@
190insn_basic_SOURCES	= insn_basic.def
191insn_basic_LDADD	= -lm
192insn_mmx_SOURCES	= insn_mmx.def
193insn_mmx_LDADD		= -lm
194insn_sse_SOURCES	= insn_sse.def
195insn_sse_LDADD		= -lm
196insn_sse2_SOURCES	= insn_sse2.def
197insn_sse2_LDADD		= -lm
198insn_sse3_SOURCES	= insn_sse3.def
199insn_sse3_LDADD		= -lm
200insn_ssse3_SOURCES	= insn_ssse3.def
201insn_ssse3_LDADD	= -lm
202insn_fpu_SOURCES	= insn_fpu.def
203insn_fpu_LDADD		= -lm
204insn_pclmulqdq_SOURCES  = insn_pclmulqdq.def
205fxtract_LDADD		= -lm
206fma4_CFLAGS		= $(AM_CFLAGS) -std=c99
207if VGCONF_OS_IS_SOLARIS
208fma4_CFLAGS		+= -D__EXTENSIONS__
209endif
210fma4_LDADD		= -lm
211jrcxz_CFLAGS		= $(AM_CFLAGS) @FLAG_NO_PIE@
212looper_CFLAGS		= $(AM_CFLAGS) @FLAG_NO_PIE@
213sbbmisc_CFLAGS		= $(AM_CFLAGS) @FLAG_NO_PIE@
214shrld_CFLAGS		= $(AM_CFLAGS) @FLAG_NO_PIE@
215
216.def.c: $(srcdir)/gen_insn_test.pl
217	$(PERL) $(srcdir)/gen_insn_test.pl < $< > $@
218