2001-11-05 08:22:16 +08:00
|
|
|
LEVEL = ..
|
2003-09-06 23:12:21 +08:00
|
|
|
DIRS = Programs
|
2002-03-18 12:05:26 +08:00
|
|
|
include Makefile.tests
|
2002-01-24 05:36:59 +08:00
|
|
|
|
2003-09-06 23:12:21 +08:00
|
|
|
#
|
|
|
|
# Make QMTest the default for testing features and regressions
|
|
|
|
#
|
|
|
|
all:: qmtest
|
|
|
|
|
2003-08-21 23:09:29 +08:00
|
|
|
#
|
|
|
|
# New QMTest functionality:
|
|
|
|
# The test suite is being transitioned over to QMTest. Eventually, it
|
|
|
|
# will use QMTest by default.
|
|
|
|
#
|
|
|
|
|
|
|
|
# List of the functioning QM Tests
|
|
|
|
QMTESTS=feature \
|
2003-09-06 23:12:21 +08:00
|
|
|
regression
|
2003-08-21 23:09:29 +08:00
|
|
|
|
|
|
|
# QMTest option specifying the location of the QMTest database.
|
|
|
|
QMDB= -D $(LLVM_SRC_ROOT)/test/QMTestDB
|
|
|
|
|
|
|
|
#
|
|
|
|
# This is configuration information used by the test suite. In QM Test, it's
|
|
|
|
# called a 'context.'
|
|
|
|
#
|
|
|
|
CONTEXT= -c srcroot=$(LLVM_SRC_ROOT) \
|
|
|
|
-c buildroot=$(LLVM_OBJ_ROOT) \
|
2003-09-06 23:12:21 +08:00
|
|
|
-c buildtype=$(CONFIGURATION) \
|
2003-08-21 23:09:29 +08:00
|
|
|
-c tmpdir=$(LLVM_OBJ_ROOT)/test/tmp \
|
2003-09-06 23:12:21 +08:00
|
|
|
-c coresize=0 \
|
|
|
|
-c cc=$(CC) \
|
|
|
|
-c cxx=$(CXX) \
|
|
|
|
-c "llvmgcc=$(LLVMGCC)" \
|
|
|
|
-c make=$(MAKE)
|
2003-08-21 23:09:29 +08:00
|
|
|
|
|
|
|
#
|
|
|
|
# Location of the QMTest program.
|
|
|
|
#
|
|
|
|
QMTEST= qmtest $(QMDB)
|
|
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
# Execute the tests
|
|
|
|
#
|
|
|
|
qmtest:: $(LLVM_OBJ_ROOT)/test/tmp register
|
|
|
|
$(QMTEST) run -O $(LLVM_SRC_ROOT)/test/QMTestDB/expectations.qmr $(CONTEXT)
|
|
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
# Create the temporary directory used by the test suite.
|
|
|
|
#
|
|
|
|
$(LLVM_OBJ_ROOT)/test/tmp::
|
|
|
|
${MKDIR} $(LLVM_OBJ_ROOT)/test/tmp
|
|
|
|
|
|
|
|
#
|
|
|
|
# Register the python code with QMTest
|
|
|
|
#
|
|
|
|
register:: $(LLVM_SRC_ROOT)/test/QMTestDB/QMTest/llvm.pyo
|
|
|
|
|
|
|
|
$(LLVM_SRC_ROOT)/test/QMTestDB/QMTest/llvm.pyo: $(LLVM_SRC_ROOT)/test/QMTestDB/QMTest/llvm.py
|
|
|
|
$(QMTEST) register test llvm.TestAsmDisasm
|
|
|
|
$(QMTEST) register test llvm.AssembleTest
|
|
|
|
$(QMTEST) register test llvm.ConvertToCTest
|
|
|
|
$(QMTEST) register test llvm.LLToCTest
|
|
|
|
$(QMTEST) register test llvm.MachineCodeTest
|
|
|
|
$(QMTEST) register test llvm.AssemblyCodeTest
|
|
|
|
$(QMTEST) register test llvm.TestOptimizer
|
|
|
|
$(QMTEST) register test llvm.LLITest
|
|
|
|
$(QMTEST) register test llvm.TestRunner
|
|
|
|
$(QMTEST) register test llvm.VerifierTest
|
|
|
|
$(QMTEST) register test llvm.AnalyzeTest
|
|
|
|
$(QMTEST) register test llvm.CTest
|
|
|
|
$(QMTEST) register resource llvm.BytecodeResource
|
|
|
|
|