#CC = /usr/local/cs/bin/gcc
CC=gcc
CFLAGS= -O1 -Wall -g
CINC =
F32 =-m32
F32c =-m32 -march=i686 -msse4 -mfpmath=sse
F64 =-m64


.SUFFIXES: .c .32s .64s .32o .64o .32d .64d .32cs


.c.32s:
	$(CC) $(CFLAGS) $(CINC) -S $(F32) $*.c -o $*.$(MACHINE)32s

.c.32cs:
	$(CC) $(CFLAGS) $(CINC) -S $(F32c) $*.c -o $*.$(MACHINE)32cs

.c.64s:
	$(CC) $(CFLAGS) $(CINC) -S $(F64) $*.c -o $*.$(MACHINE)64s

.c.32d:
	$(CC) $(CFLAGS) $(CINC) $(F32) $*.c -o $*
	objdump -d $* > $*.32d
	rm -f $*

.c.64d:
	$(CC) $(CFLAGS) $(CINC) $(F64) $*.c -o $*
	objdump -d $* > $*.64d
	rm -f $*

files:	switch switch.32s switch.32d switch.64s switch.64d \
	swap swap.32s swap.64s swap.32d swap.64d \
	pointer.32s pointer.64s recurse.32s recurse.64s

switch: switch.c
	$(CC) $(CFLAGS) $(CINC) $(F32) switch.c -o switch

swap: swap.c
	$(CC) $(CFLAGS) $(CINC) $(F32) swap.c -o swap

clean:
	rm -f *~
