29 строки
1.1 KiB
Makefile
29 строки
1.1 KiB
Makefile
##===- TEST.llc.Makefile -----------------------------------*- Makefile -*-===##
|
|
#
|
|
# This test tries running the compiler on all of the programs and
|
|
# reports on detailed pass execution times and register allocation and
|
|
# peephole optimization statistics.
|
|
#
|
|
##===----------------------------------------------------------------------===##
|
|
|
|
LLC_OPTS = $(LLCFLAGS) -f -o=/dev/null -stats -time-passes
|
|
CURDIR := $(shell cd .; pwd)
|
|
PROGDIR := $(PROJ_SRC_ROOT)
|
|
RELDIR := $(subst $(PROGDIR),,$(CURDIR))
|
|
|
|
$(PROGRAMS_TO_TEST:%=Output/%.$(TEST).report.txt): \
|
|
Output/%.$(TEST).report.txt: Output/%.llvm.bc $(LLC)
|
|
$(VERB) $(RM) -f $@
|
|
@echo "---------------------------------------------------------------" >> $@
|
|
@echo ">>> ========= '$(RELDIR)/$*' Program" >> $@
|
|
@echo "---------------------------------------------------------------" >> $@
|
|
-(time -p $(LLC) $(LLC_OPTS) $<) >> $@ 2>&1
|
|
|
|
$(PROGRAMS_TO_TEST:%=test.$(TEST).%): \
|
|
test.$(TEST).%: Output/%.$(TEST).report.txt
|
|
@cat $<
|
|
|
|
# Define REPORT_DEPENDENCIES so that the report is regenerated if llc changes
|
|
#
|
|
REPORT_DEPENDENCIES := $(LLC)
|