Makefile.am revision d59b5697d8b373b7f82b311e404b6de1dd29ef80
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.
20EXTRA_DIST = \
21	badseg.stderr.exp badseg.stdout.exp badseg.vgtest \
22	bt_everything.stderr.exp bt_everything.stdout.exp bt_everything.vgtest \
23	bt_literal.stderr.exp bt_literal.stdout.exp bt_literal.vgtest \
24	bug125959-x86.stderr.exp bug125959-x86.stdout.exp bug125959-x86.vgtest \
25	bug126147-x86.stderr.exp bug126147-x86.stdout.exp bug126147-x86.vgtest \
26	bug132813-x86.stderr.exp bug132813-x86.stdout.exp bug132813-x86.vgtest \
27	bug135421-x86.stderr.exp bug135421-x86.stdout.exp bug135421-x86.vgtest \
28	bug137714-x86.stderr.exp bug137714-x86.stdout.exp bug137714-x86.vgtest \
29	bug152818-x86.stderr.exp bug152818-x86.stdout.exp bug152818-x86.vgtest \
30	cmpxchg8b.stderr.exp cmpxchg8b.stdout.exp cmpxchg8b.vgtest \
31	cpuid.stderr.exp cpuid.stdout.exp cpuid.vgtest \
32	cse_fail.stderr.exp cse_fail.stdout.exp cse_fail.vgtest \
33	faultstatus.disabled faultstatus.stderr.exp \
34	fcmovnu.vgtest fcmovnu.stderr.exp fcmovnu.stdout.exp \
35	fpu_lazy_eflags.stderr.exp fpu_lazy_eflags.stdout.exp \
36	fpu_lazy_eflags.vgtest \
37	fxtract.stdout.exp fxtract.stderr.exp fxtract.vgtest \
38	getseg.stdout.exp getseg.stderr.exp getseg.vgtest \
39	incdec_alt.stdout.exp incdec_alt.stderr.exp incdec_alt.vgtest \
40	int.stderr.exp int.stdout.exp int.disabled \
41	$(addsuffix .stderr.exp,$(INSN_TESTS)) \
42	$(addsuffix .stdout.exp,$(INSN_TESTS)) \
43	$(addsuffix .vgtest,$(INSN_TESTS)) \
44	insn_sse3.stdout.exp insn_sse3.stderr.exp insn_sse3.vgtest \
45	insn_ssse3.stdout.exp insn_ssse3.stderr.exp insn_ssse3.vgtest \
46	jcxz.stdout.exp jcxz.stderr.exp jcxz.vgtest \
47	lahf.stdout.exp lahf.stderr.exp lahf.vgtest \
48	looper.stderr.exp looper.stdout.exp looper.vgtest \
49	movx.stderr.exp movx.stdout.exp movx.vgtest \
50	pushpopseg.stderr.exp pushpopseg.stdout.exp pushpopseg.vgtest \
51	sbbmisc.stderr.exp sbbmisc.stdout.exp sbbmisc.vgtest \
52	smc1.stderr.exp smc1.stdout.exp smc1.vgtest \
53	ssse3_misaligned.stderr.exp ssse3_misaligned.stdout.exp \
54	ssse3_misaligned.vgtest ssse3_misaligned.c \
55	x86locked.vgtest x86locked.stdout.exp x86locked.stderr.exp \
56	yield.stderr.exp yield.stdout.exp yield.disabled \
57	xadd.stdout.exp xadd.stderr.exp xadd.vgtest
58
59check_PROGRAMS = \
60	badseg \
61	bt_everything \
62	bt_literal \
63	bug125959-x86 \
64	bug126147-x86 \
65	bug132813-x86 \
66	bug135421-x86 \
67	bug137714-x86 \
68	bug152818-x86 \
69	cmpxchg8b \
70	cpuid \
71	cse_fail \
72	faultstatus \
73	fcmovnu \
74	fpu_lazy_eflags \
75	fxtract \
76	getseg \
77	incdec_alt \
78	$(INSN_TESTS) \
79	int \
80	jcxz \
81	lahf \
82	looper \
83	movx \
84	pushpopseg \
85	sbbmisc \
86	smc1 \
87	x86locked \
88	yield \
89	xadd
90if BUILD_SSSE3_TESTS
91   check_PROGRAMS += ssse3_misaligned
92endif
93
94
95AM_CFLAGS    += @FLAG_M32@ $(FLAG_MMMX) $(FLAG_MSSE)
96AM_CXXFLAGS  += @FLAG_M32@ $(FLAG_MMMX) $(FLAG_MSSE)
97AM_CCASFLAGS += @FLAG_M32@
98
99if VGCONF_OS_IS_DARWIN
100# Some of the tests (bug125959_x86, bug152818_x86, insn_*) need
101# -mdynamic-no-pic.  I tried setting *_CFLAGS separately for all of them,
102# but it caused problems with the generation of insn_*.c.  So just use this
103# crude approach of setting -mdynamic-no-pic for all tests in this
104# directory.
105AM_CFLAGS += -mdynamic-no-pic
106endif
107
108cpuid_SOURCES 		= cpuid_c.c cpuid_s.S
109# fpu_lazy_eflags must use these flags -- the bug only occurred with them.
110fpu_lazy_eflags_CFLAGS	= $(AM_CFLAGS) -O2 -march=pentiumpro
111fxtract_LDADD		= -lm
112insn_basic_SOURCES	= insn_basic.def
113insn_basic_LDADD	= -lm
114insn_fpu_SOURCES	= insn_fpu.def
115insn_fpu_LDADD		= -lm
116insn_cmov_SOURCES	= insn_cmov.def
117insn_cmov_LDADD		= -lm
118insn_mmx_SOURCES	= insn_mmx.def
119insn_mmx_LDADD		= -lm
120insn_mmxext_SOURCES	= insn_mmxext.def
121insn_mmxext_LDADD	= -lm
122insn_sse_SOURCES	= insn_sse.def
123insn_sse_LDADD		= -lm
124insn_sse2_SOURCES	= insn_sse2.def
125insn_sse2_LDADD		= -lm
126insn_sse3_SOURCES	= insn_sse3.def
127insn_sse3_LDADD		= -lm
128insn_ssse3_SOURCES	= insn_ssse3.def
129insn_ssse3_LDADD	= -lm
130x86locked_CFLAGS	= $(AM_CFLAGS) -O
131yield_LDADD		= -lpthread
132
133.def.c: $(srcdir)/gen_insn_test.pl
134	$(PERL) $(srcdir)/gen_insn_test.pl < $< > $@
135