
all: compile run

compile:
	gcc -static  -DSP -O fputest.c -o fputestSP
	gcc -static  -DSP -DUNROLL4 -O fputest.c -o fputestSPU4
	gcc -static  -DSP -DUNROLL8 -O fputest.c -o fputestSPU8
	gcc -static  -DSP -DPIPE4 -O fputest.c -o fputestSPP4
	gcc -static  -DSP -DPIPE8 -O fputest.c -o fputestSPP8
	gcc -static  -DDP -O fputest.c -o fputestDP
	gcc -static  -DDP -DUNROLL4 -O fputest.c -o fputestDPU4
	gcc -static  -DDP -DUNROLL8 -O fputest.c -o fputestDPU8
	gcc -static  -DDP -DPIPE4 -O fputest.c -o fputestDPP4
	gcc -static  -DDP -DPIPE8 -O fputest.c -o fputestDPP8

assembler:
	gcc -S -static  -DSP -O fputest.c -o fputestSP.s
	gcc -S -static  -DSP -DUNROLL4 -O fputest.c -o fputestSPU4.s
	gcc -S -static  -DSP -DUNROLL8 -O fputest.c -o fputestSPU8.s
	gcc -S -static  -DSP -DPIPE4 -O fputest.c -o fputestSPP4.s
	gcc -S -static  -DSP -DPIPE8 -O fputest.c -o fputestSPP8.s
	gcc -S -static  -DDP -O fputest.c -o fputestDP.s
	gcc -S -static  -DDP -DUNROLL4 -O fputest.c -o fputestDPU4.s
	gcc -S -static  -DDP -DUNROLL8 -O fputest.c -o fputestDPU8.s
	gcc -S -static  -DDP -DPIPE4 -O fputest.c -o fputestDPP4.s
	gcc -S -static  -DDP -DPIPE8 -O fputest.c -o fputestDPP8.s

clean:
	rm -f fputestSP*
	rm -f fputestDP*

run:
	fputestSP
	fputestSPU4
	fputestSPU8
	fputestSPP4
	fputestSPP8
	fputestDP
	fputestDPU4
	fputestDPU8
	fputestDPP4
	fputestDPP8
	gcc -v
	cat /proc/cpuinfo
