Makefile (577B)
1 CXX = g++ 2 CXXFLAGS = -g -Wall -Wextra -Wpedantic -I$(SHARED_DATA)/local/include -L$(SHARED_DATA)/local/lib 3 LIBS = -lpapi 4 5 .PHONY: clean 6 7 all: sgemv_O0 sgemv_O1 sgemv_O2 sgemv_O3_autovec sgemv_O3_noautovec 8 9 sgemv_O0: sgemv.cpp 10 $(CXX) -O0 $(CXXFLAGS) -o $@ $< $(LIBS) 11 12 sgemv_O1: sgemv.cpp 13 $(CXX) -O1 $(CXXFLAGS) -o $@ $< $(LIBS) 14 15 sgemv_O2: sgemv.cpp 16 $(CXX) -O2 $(CXXFLAGS) -o $@ $< $(LIBS) 17 18 sgemv_O3_autovec: sgemv.cpp 19 $(CXX) -O3 $(CXXFLAGS) -o $@ $< $(LIBS) 20 21 sgemv_O3_noautovec: sgemv.cpp 22 $(CXX) -O3 -fno-tree-vectorize $(CXXFLAGS) -o $@ $< $(LIBS) 23 24 clean: 25 rm -f sgemv_O*