#SCCFLAGS= --no-fe-cofold --fe-bvt

# On K6-2s use this:
SCCFLAGS=-v -p -k -mK6-2
# On non-K6-2s use this:
#SCCFLAGS=-Sc -p -k -mK6-2


all: swar unswar estimates

tree:
	Scc ${SCCFLAGS} -irr -o lp -O2 lp.Sc lp.c > lp.tree

swar: lp.c lp.Sc
	(for vsize in 2 4 8 100 200 500; do \
		for optime in 1 2 4 100; do \
			Scc ${SCCFLAGS} -DSWAR -DVECTSIZE=$${vsize} \
			    -O$${optime} \
			    -o lps-$${vsize}-$${optime} \
			    -oc Scouts/Scouts-$${vsize}-$${optime}.c \
			    lp.Sc lp.c; \
		done; \
	done)

unswar: lp.c lp.Sc
	(for vsize in 2 4 8 100 200 500; do \
		for optime in 1 2 4 100; do \
			Scc ${SCCFLAGS} -USWAR -DVECTSIZE=$${vsize} \
			    -O$${optime} \
			    -o lp-$${vsize}-$${optime} \
			    -oc Scouts/Scout-$${vsize}-$${optime}.c \
			    lp.Sc lp.c; \
		done; \
	done)

estimates:
	echo -n "" > estimates
	(for vsize in 2 4 8 100 200 500; do \
		for optime in 1 2 4 100; do \
			echo -n "$${vsize},$${optime}" >> estimates; \
			grep "cost estimate" Scouts/Scouts-$${vsize}-$${optime}.c \
			    >> estimates; \
		done; \
	done)

clean:
	rm -f lp.tree
	rm -f Scout.c Scout.h
	rm -f Scouts/Scout-*-*.c
	rm -f Scouts/Scouts-*-*.c
	rm -f core

distclean: clean
	rm -f lp-*
	rm -f lps-*
	rm -f estimates
	rm -f Linpackc.res

