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_fpu insn_cmov insn_mmx insn_mmxext \
11 INSN_TESTS += insn_sse3
14 INSN_TESTS += insn_ssse3
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.
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
89 check_PROGRAMS += ssse3_misaligned
93 AM_CFLAGS += @FLAG_M32@ $(FLAG_MMMX) $(FLAG_MSSE)
94 AM_CXXFLAGS += @FLAG_M32@ $(FLAG_MMMX) $(FLAG_MSSE)
95 AM_CCASFLAGS += @FLAG_M32@
97 if VGCONF_OS_IS_DARWIN
98 # Some of the tests (bug125959_x86, bug152818_x86, insn_*) need
99 # -mdynamic-no-pic. I tried setting *_CFLAGS separately for all of them,
100 # but it caused problems with the generation of insn_*.c. So just use this
101 # crude approach of setting -mdynamic-no-pic for all tests in this
103 AM_CFLAGS += -mdynamic-no-pic
106 cpuid_SOURCES = cpuid_c.c cpuid_s.S
107 # fpu_lazy_eflags must use these flags -- the bug only occurred with them.
108 fpu_lazy_eflags_CFLAGS = $(AM_CFLAGS) -O2 -march=pentiumpro
110 insn_basic_SOURCES = insn_basic.def
111 insn_basic_LDADD = -lm
112 insn_fpu_SOURCES = insn_fpu.def
114 insn_cmov_SOURCES = insn_cmov.def
115 insn_cmov_LDADD = -lm
116 insn_mmx_SOURCES = insn_mmx.def
118 insn_mmxext_SOURCES = insn_mmxext.def
119 insn_mmxext_LDADD = -lm
120 insn_sse_SOURCES = insn_sse.def
122 insn_sse2_SOURCES = insn_sse2.def
123 insn_sse2_LDADD = -lm
124 insn_sse3_SOURCES = insn_sse3.def
125 insn_sse3_LDADD = -lm
126 insn_ssse3_SOURCES = insn_ssse3.def
127 insn_ssse3_LDADD = -lm
128 x86locked_CFLAGS = $(AM_CFLAGS) -O
129 yield_LDADD = -lpthread
131 .def.c: $(srcdir)/gen_insn_test.pl
132 $(PERL) $(srcdir)/gen_insn_test.pl < $< > $@