X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=test%2FMakefile;h=5ecc4a227c5214bbfdfac40a960ae843b723168e;hb=e32157c6098ee7536315e9793eed98d21bf71fd0;hp=4934e414e3b51ef7fa9c894858e7d1226adf9204;hpb=cf8a5f899b9d5ed7a37c45084ef85751d8c7ce05;p=oota-llvm.git diff --git a/test/Makefile b/test/Makefile index 4934e414e3b..5ecc4a227c5 100644 --- a/test/Makefile +++ b/test/Makefile @@ -1,32 +1,71 @@ -TESTS := $(wildcard *.ll) +#===- test/Makefile ----------------------------------------*- Makefile -*--===# +# +# The LLVM Compiler Infrastructure +# +# This file was developed by the LLVM research group and is distributed under +# the University of Illinois Open Source License. See LICENSE.TXT for details. +# +#===------------------------------------------------------------------------===# -SELECTTESTS := $(shell /bin/ls *.ll | grep -v testmemory | grep -v testswitch") +LEVEL = .. +DIRS = -test all : testasmdis testopt - @echo "All tests successfully completed!" +# +# Make Dejagnu the default for testing +# +all:: check-local -testasmdis : $(TESTS:%.ll=%.ll.asmdis) - @echo "All assembler/disassembler test succeeded!" +# Include other test rules +include Makefile.tests -testopt : $(TESTS:%.ll=%.ll.opt) +#===------------------------------------------------------------------------===# +# DejaGNU testing support +#===------------------------------------------------------------------------===# -testselect : $(SELECTTESTS:%.ll=%.mc) +ifdef TESTSUITE +CLEANED_TESTSUITE := $(patsubst %/,%,$(TESTSUITE)) +CLEANED_TESTSUITE := $(patsubst test/%,%,$(CLEANED_TESTSUITE)) +RUNTESTFLAGS := --tool $(CLEANED_TESTSUITE) +endif -clean : - rm -f *.[123] *.bc *.mc core +ifndef RUNLLVM2CPP +RUNTESTFLAGS += --ignore llvm2cpp.exp +endif -%.asmdis: % - @echo "Running assembler/disassembler test on $<" - @./TestAsmDisasm.sh $< +ifneq ($(RUNTEST),) +check-local:: site.exp + ( ulimit -t 600 ; ulimit -d 512000 ; \ + PATH="$(LLVMToolDir):$(LLVM_SRC_ROOT)/test/Scripts:$(PATH)" \ + $(RUNTEST) $(RUNTESTFLAGS) ) +else +check-local:: site.exp + @echo "*** dejagnu not found. Make sure runtest is in your PATH, then reconfigure llvm." +endif -%.opt: % - @echo "Running optimizier test on $<" - @./TestOptimizer.sh $< +clean:: + $(RM) -rf `find $(LLVM_OBJ_ROOT)/test -name Output -type d -print` -%.bc: %.ll - rm -f $@ - as $< - -%.mc: %.bc - @echo "Generating machine instructions for $<" - @llc -dselect y $< > $@ +site.exp: Makefile $(LLVM_OBJ_ROOT)/Makefile.config + @echo 'Making a new site.exp file...' + @echo '## these variables are automatically generated by make ##' >site.tmp + @echo '# Do not edit here. If you wish to override these values' >>site.tmp + @echo '# edit the last section' >>site.tmp + @echo 'set target_triplet "$(TARGET_TRIPLE)"' >> site.tmp + @echo 'set llvmgcc_version "$(LLVMGCC_VERSION)"' >> site.tmp + @echo 'set prcontext "$(TCLSH) $(LLVM_SRC_ROOT)/test/Scripts/prcontext.tcl"' >> site.tmp + @echo 'set llvmtoolsdir "$(ToolDir)"' >>site.tmp + @echo 'set llvmlibsdir "$(LibDir)"' >>site.tmp + @echo 'set srcroot "$(LLVM_SRC_ROOT)"' >>site.tmp + @echo 'set objroot "$(LLVM_OBJ_ROOT)"' >>site.tmp + @echo 'set srcdir "$(LLVM_SRC_ROOT)/test"' >>site.tmp + @echo 'set objdir "$(LLVM_OBJ_ROOT)/test"' >>site.tmp + @echo 'set llvmgcc "PATH=\"$(LLVMToolDir):$(PATH)\" \"$(LLVMGCC)\""' >> site.tmp + @echo 'set llvmgxx "PATH=\"$(LLVMToolDir):$(PATH)\" \"$(LLVMGCC)\""' >> site.tmp + @echo 'set llvmgccmajvers "$(LLVMGCC_MAJVERS)"' >> site.tmp + @echo 'set gxxcmd "$(CXX) $(CPP.Flags) $(CXX.Flags) $(CompileCommonOpts)"' >> site.tmp + @echo '## All variables above are generated by configure. Do Not Edit ## ' >>site.tmp + @test ! -f site.exp || \ + sed '1,/^## All variables above are.*##/ d' site.exp >> site.tmp + @-rm -f site.bak + @test ! -f site.exp || mv site.exp site.bak + @mv site.tmp site.exp