Makefile.am revision 7603b6b4a5f7027ed06b2c0cb4bff8c73487a49d
1
2include $(top_srcdir)/Makefile.tool-tests.am
3
4dist_noinst_SCRIPTS = filter_cpuid filter_stderr gen_insn_test.pl
5
6CLEANFILES = $(addsuffix .c,$(INSN_TESTS))
7
8INSN_TESTS = insn_basic insn_fpu insn_cmov insn_mmx insn_mmxext \
9		insn_sse insn_sse2
10if BUILD_SSE3_TESTS
11   INSN_TESTS += insn_sse3
12endif
13if BUILD_SSSE3_TESTS
14   INSN_TESTS += insn_ssse3
15endif
16
17# Explicitly include insn_sse3 even if ! BUILD_SSE3_TESTS, 
18# to avoid packaging screwups if 'make dist' is run on a machine
19# which failed the BUILD_SSE3_TESTS test in configure.in.
20
21## FIXME: move lzcnt32 to SSE4 conditionalisation, when that happens.
22
23EXTRA_DIST = \
24	aad_aam.stdout.exp aad_aam.stderr.exp aad_aam.vgtest \
25	badseg.stderr.exp badseg.stdout.exp badseg.vgtest \
26	bt_everything.stderr.exp bt_everything.stdout.exp bt_everything.vgtest \
27	bt_literal.stderr.exp bt_literal.stdout.exp bt_literal.vgtest \
28	bug125959-x86.stderr.exp bug125959-x86.stdout.exp bug125959-x86.vgtest \
29	bug126147-x86.stderr.exp bug126147-x86.stdout.exp bug126147-x86.vgtest \
30	bug132813-x86.stderr.exp bug132813-x86.stdout.exp bug132813-x86.vgtest \
31	bug135421-x86.stderr.exp bug135421-x86.stdout.exp bug135421-x86.vgtest \
32	bug137714-x86.stderr.exp bug137714-x86.stdout.exp bug137714-x86.vgtest \
33	bug152818-x86.stderr.exp bug152818-x86.stdout.exp bug152818-x86.vgtest \
34	cmpxchg8b.stderr.exp cmpxchg8b.stdout.exp cmpxchg8b.vgtest \
35	cpuid.stderr.exp cpuid.stdout.exp cpuid.vgtest \
36	cse_fail.stderr.exp cse_fail.stdout.exp cse_fail.vgtest \
37	faultstatus.disabled faultstatus.stderr.exp \
38	fcmovnu.vgtest fcmovnu.stderr.exp fcmovnu.stdout.exp \
39	fpu_lazy_eflags.stderr.exp fpu_lazy_eflags.stdout.exp \
40	fpu_lazy_eflags.vgtest \
41	fxtract.stdout.exp fxtract.stderr.exp fxtract.vgtest \
42	getseg.stdout.exp getseg.stderr.exp getseg.vgtest \
43	incdec_alt.stdout.exp incdec_alt.stderr.exp incdec_alt.vgtest \
44	int.stderr.exp int.stdout.exp int.disabled \
45	$(addsuffix .stderr.exp,$(INSN_TESTS)) \
46	$(addsuffix .stdout.exp,$(INSN_TESTS)) \
47	$(addsuffix .vgtest,$(INSN_TESTS)) \
48	insn_sse3.stdout.exp insn_sse3.stderr.exp insn_sse3.vgtest \
49	insn_ssse3.stdout.exp insn_ssse3.stderr.exp insn_ssse3.vgtest \
50	jcxz.stdout.exp jcxz.stderr.exp jcxz.vgtest \
51	lahf.stdout.exp lahf.stderr.exp lahf.vgtest \
52	looper.stderr.exp looper.stdout.exp looper.vgtest \
53	lzcnt32.stderr.exp lzcnt32.stdout.exp lzcnt32.vgtest \
54	movx.stderr.exp movx.stdout.exp movx.vgtest \
55	pushpopseg.stderr.exp pushpopseg.stdout.exp pushpopseg.vgtest \
56	sbbmisc.stderr.exp sbbmisc.stdout.exp sbbmisc.vgtest \
57	smc1.stderr.exp smc1.stdout.exp smc1.vgtest \
58	ssse3_misaligned.stderr.exp ssse3_misaligned.stdout.exp \
59	ssse3_misaligned.vgtest ssse3_misaligned.c \
60	x86locked.vgtest x86locked.stdout.exp x86locked.stderr.exp \
61	yield.stderr.exp yield.stdout.exp yield.disabled \
62	xadd.stdout.exp xadd.stderr.exp xadd.vgtest
63
64check_PROGRAMS = \
65	aad_aam \
66	badseg \
67	bt_everything \
68	bt_literal \
69	bug125959-x86 \
70	bug126147-x86 \
71	bug132813-x86 \
72	bug135421-x86 \
73	bug137714-x86 \
74	bug152818-x86 \
75	cmpxchg8b \
76	cpuid \
77	cse_fail \
78	faultstatus \
79	fcmovnu \
80	fpu_lazy_eflags \
81	fxtract \
82	getseg \
83	incdec_alt \
84	$(INSN_TESTS) \
85	int \
86	jcxz \
87	lahf \
88	looper \
89	movx \
90	pushpopseg \
91	sbbmisc \
92	smc1 \
93	x86locked \
94	yield \
95	xadd
96if BUILD_SSSE3_TESTS
97   check_PROGRAMS += ssse3_misaligned
98endif
99if BUILD_LZCNT_TESTS
100 check_PROGRAMS += lzcnt32
101endif
102
103
104AM_CFLAGS    += @FLAG_M32@ $(FLAG_MMMX) $(FLAG_MSSE)
105AM_CXXFLAGS  += @FLAG_M32@ $(FLAG_MMMX) $(FLAG_MSSE)
106AM_CCASFLAGS += @FLAG_M32@
107
108if VGCONF_OS_IS_DARWIN
109# Some of the tests (bug125959_x86, bug152818_x86, insn_*) need
110# -mdynamic-no-pic.  I tried setting *_CFLAGS separately for all of them,
111# but it caused problems with the generation of insn_*.c.  So just use this
112# crude approach of setting -mdynamic-no-pic for all tests in this
113# directory.
114AM_CFLAGS += -mdynamic-no-pic
115endif
116
117cpuid_SOURCES 		= cpuid_c.c cpuid_s.S
118# fpu_lazy_eflags must use these flags -- the bug only occurred with them.
119fpu_lazy_eflags_CFLAGS	= $(AM_CFLAGS) -O2 -march=pentiumpro
120fxtract_LDADD		= -lm
121insn_basic_SOURCES	= insn_basic.def
122insn_basic_LDADD	= -lm
123insn_fpu_SOURCES	= insn_fpu.def
124insn_fpu_LDADD		= -lm
125insn_cmov_SOURCES	= insn_cmov.def
126insn_cmov_LDADD		= -lm
127insn_mmx_SOURCES	= insn_mmx.def
128insn_mmx_LDADD		= -lm
129insn_mmxext_SOURCES	= insn_mmxext.def
130insn_mmxext_LDADD	= -lm
131insn_sse_SOURCES	= insn_sse.def
132insn_sse_LDADD		= -lm
133insn_sse2_SOURCES	= insn_sse2.def
134insn_sse2_LDADD		= -lm
135insn_sse3_SOURCES	= insn_sse3.def
136insn_sse3_LDADD		= -lm
137insn_ssse3_SOURCES	= insn_ssse3.def
138insn_ssse3_LDADD	= -lm
139x86locked_CFLAGS	= $(AM_CFLAGS) -O
140yield_LDADD		= -lpthread
141
142.def.c: $(srcdir)/gen_insn_test.pl
143	$(PERL) $(srcdir)/gen_insn_test.pl < $< > $@
144