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 fxtract.stdout.exp-older-glibc \ 43 getseg.stdout.exp getseg.stderr.exp getseg.vgtest \ 44 incdec_alt.stdout.exp incdec_alt.stderr.exp incdec_alt.vgtest \ 45 int.stderr.exp int.stdout.exp int.disabled \ 46 $(addsuffix .stderr.exp,$(INSN_TESTS)) \ 47 $(addsuffix .stdout.exp,$(INSN_TESTS)) \ 48 $(addsuffix .vgtest,$(INSN_TESTS)) \ 49 insn_sse3.stdout.exp insn_sse3.stderr.exp insn_sse3.vgtest \ 50 insn_ssse3.stdout.exp insn_ssse3.stderr.exp insn_ssse3.vgtest \ 51 jcxz.stdout.exp jcxz.stderr.exp jcxz.vgtest \ 52 lahf.stdout.exp lahf.stderr.exp lahf.vgtest \ 53 looper.stderr.exp looper.stdout.exp looper.vgtest \ 54 lzcnt32.stderr.exp lzcnt32.stdout.exp lzcnt32.vgtest \ 55 movx.stderr.exp movx.stdout.exp movx.vgtest \ 56 pushpopseg.stderr.exp pushpopseg.stdout.exp pushpopseg.vgtest \ 57 sbbmisc.stderr.exp sbbmisc.stdout.exp sbbmisc.vgtest \ 58 shift_ndep.stderr.exp shift_ndep.stdout.exp shift_ndep.vgtest \ 59 smc1.stderr.exp smc1.stdout.exp smc1.vgtest \ 60 ssse3_misaligned.stderr.exp ssse3_misaligned.stdout.exp \ 61 ssse3_misaligned.vgtest ssse3_misaligned.c \ 62 x86locked.vgtest x86locked.stdout.exp x86locked.stderr.exp \ 63 yield.stderr.exp yield.stdout.exp yield.disabled \ 64 xadd.stdout.exp xadd.stderr.exp xadd.vgtest 65 66check_PROGRAMS = \ 67 aad_aam \ 68 badseg \ 69 bt_everything \ 70 bt_literal \ 71 bug125959-x86 \ 72 bug126147-x86 \ 73 bug132813-x86 \ 74 bug135421-x86 \ 75 bug137714-x86 \ 76 bug152818-x86 \ 77 cmpxchg8b \ 78 cpuid \ 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 shift_ndep \ 93 smc1 \ 94 x86locked \ 95 yield \ 96 xadd 97if BUILD_SSSE3_TESTS 98 check_PROGRAMS += ssse3_misaligned 99endif 100if BUILD_LZCNT_TESTS 101 check_PROGRAMS += lzcnt32 102endif 103if !VGCONF_OS_IS_DARWIN 104 check_PROGRAMS += cse_fail faultstatus 105endif 106 107 108AM_CFLAGS += @FLAG_M32@ $(FLAG_MMMX) $(FLAG_MSSE) 109AM_CXXFLAGS += @FLAG_M32@ $(FLAG_MMMX) $(FLAG_MSSE) 110AM_CCASFLAGS += @FLAG_M32@ 111 112if VGCONF_OS_IS_DARWIN 113# Some of the tests (bug125959_x86, bug152818_x86, insn_*) need 114# -mdynamic-no-pic. I tried setting *_CFLAGS separately for all of them, 115# but it caused problems with the generation of insn_*.c. So just use this 116# crude approach of setting -mdynamic-no-pic for all tests in this 117# directory. 118AM_CFLAGS += -mdynamic-no-pic 119endif 120 121cpuid_SOURCES = cpuid_c.c cpuid_s.S 122# fpu_lazy_eflags must use these flags -- the bug only occurred with them. 123fpu_lazy_eflags_CFLAGS = $(AM_CFLAGS) -O2 -march=pentiumpro 124fxtract_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_OVERFLOW@ 125fxtract_LDADD = -lm 126insn_basic_SOURCES = insn_basic.def 127insn_basic_LDADD = -lm 128insn_fpu_SOURCES = insn_fpu.def 129insn_fpu_LDADD = -lm 130insn_cmov_SOURCES = insn_cmov.def 131insn_cmov_LDADD = -lm 132insn_mmx_SOURCES = insn_mmx.def 133insn_mmx_LDADD = -lm 134insn_mmxext_SOURCES = insn_mmxext.def 135insn_mmxext_LDADD = -lm 136insn_sse_SOURCES = insn_sse.def 137insn_sse_LDADD = -lm 138insn_sse2_SOURCES = insn_sse2.def 139insn_sse2_LDADD = -lm 140insn_sse3_SOURCES = insn_sse3.def 141insn_sse3_LDADD = -lm 142insn_ssse3_SOURCES = insn_ssse3.def 143insn_ssse3_LDADD = -lm 144x86locked_CFLAGS = $(AM_CFLAGS) -O 145yield_LDADD = -lpthread 146 147.def.c: $(srcdir)/gen_insn_test.pl 148 $(PERL) $(srcdir)/gen_insn_test.pl < $< > $@ 149