DJGPP SSE happiness

This commit is contained in:
dborca
2003-07-21 10:24:24 +00:00
parent 8b76cc1944
commit e42f28137a
3 changed files with 92 additions and 67 deletions

View File

@@ -5,15 +5,6 @@
# Web : http://www.geocities.com/dborca
#
# $Header$
# $Log$
# Revision 1.1.2.5 2003/06/21 12:43:04 dborca
# h3cinit cleanup
#
# Revision 1.1.2.4 2003/06/13 07:22:57 dborca
# more fixes to NASM sources
#
# Revision 1.1.2.3 2003/06/07 09:53:24 dborca
# initial checkin for NASM sources
#
@@ -23,14 +14,24 @@
# Environment variables:
# FX_GLIDE_HW=[h3|h5] build for the given ASIC.
# default = h5
# H4=1 tune for Voodoo3/Avenger. Not for Banshee.
# default = no
# TRIS=[asm|c|3dnow] select triangle rendering specializations.
# default = asm
# DEBUG=1 disable any optimization and build for debug.
# H4=1 tune for Avenger highspeed.
# default = no
# CPU optimize for the given processor.
# default = k6
# DEBUG=1 disable optimizations and build for debug.
# default = no
# USE_X86=1 use assembler triangle specializations.
# default = no
# USE_3DNOW=1 allow 3DNow! specializations. However, the true
# CPU capabilities are still checked at run-time
# to avoid lockups.
# default = no
# USE_MMX=1 (see USE_3DNOW)
# default = no
# USE_SSE=1 (see USE_3DNOW)
# default = no
# USE_SSE2=1 (see USE_3DNOW)
# default = no
#
# Targets:
# glid3: build glide3
@@ -73,7 +74,7 @@ UNLINK = $(RM) $(1)
endif
###############################################################################
# C defines
# defines
###############################################################################
# platform
@@ -95,24 +96,24 @@ ifdef DEBUG
CDEFS += -DGDBG_INFO_ON -DGLIDE_DEBUG -DGLIDE_SANITY_ASSERT -DGLIDE_SANITY_SIZE
endif
# specializations
ifeq ($(TRIS),c)
CDEFS += -DGLIDE_USE_C_TRISETUP
else
ifeq ($(TRIS),3dnow)
CDEFS += -DGL_AMD3D
endif
endif
# other
CDEFS += -DGLIDE_PLUG -DGLIDE_SPLASH
#CDEFS += -DGLIDE_LIB
###############################################################################
# C flags
# flags
###############################################################################
CFLAGS = -Wall
# librarian
ARFLAGS = rus
# assembler
ASFLAGS = -O2 -fcoff -D__DJGPP__ --prefix _
ASFLAGS += -I$(FX_GLIDE_HW)/glide3/src
ASFLAGS += $(CDEFS)
# compiler
CFLAGS = -Wall -W
ifdef DEBUG
CFLAGS += -O0 -gcoff
@@ -123,22 +124,37 @@ endif
CFLAGS += -I$(FX_GLIDE_HW)/glide3/src -I$(FX_GLIDE_HW)/incsrc -I$(FX_GLIDE_HW)/minihwc -Ih3/cinit
CFLAGS += -I$(FX_GLIDE_SW)/fxmisc -I$(FX_GLIDE_SW)/newpci/pcilib -I$(FX_GLIDE_SW)/fxmemmap
CFLAGS += $(CDEFS)
###############################################################################
# other flags
###############################################################################
ifeq ($(FX_GLIDE_HW),h3)
override USE_MMX = 0
override USE_SSE = 0
override USE_SSE2 = 0
endif
ASFLAGS = -fcoff -O2 --prefix _
ASFLAGS += -I$(FX_GLIDE_HW)/glide3/src
ASFLAGS += $(CDEFS)
ASFLAGS += -D__DJGPP__
ifeq ($(USE_3DNOW),1)
CFLAGS += -DGL_AMD3D
override USE_X86 = 1
endif
ifeq ($(USE_MMX),1)
CFLAGS += -DGL_MMX
override USE_X86 = 1
endif
ifeq ($(USE_SSE),1)
CFLAGS += -DGL_SSE
override USE_X86 = 1
endif
ifeq ($(USE_SSE2),1)
CFLAGS += -DGL_SSE2
override USE_X86 = 1
endif
ARFLAGS = rus
ifneq ($(USE_X86),1)
CFLAGS += -DGLIDE_USE_C_TRISETUP
endif
###############################################################################
# sources/objects
# objects
###############################################################################
GLIDE_OBJECTS = \
@@ -165,19 +181,32 @@ GLIDE_OBJECTS = \
$(FX_GLIDE_HW)/glide3/src/gtexdl.o \
$(FX_GLIDE_HW)/glide3/src/fifo.o
ifeq ($(TRIS),c)
GLIDE_OBJECTS += \
$(FX_GLIDE_HW)/glide3/src/gxdraw.o
else
ifeq ($(USE_X86),1)
GLIDE_OBJECTS += \
$(FX_GLIDE_HW)/glide3/src/xdraw2_def.o \
$(FX_GLIDE_HW)/glide3/src/xdraw3_def.o
ifeq ($(TRIS),3dnow)
ifeq ($(USE_3DNOW),1)
GLIDE_OBJECTS += \
$(FX_GLIDE_HW)/glide3/src/xdraw2_3dnow.o \
$(FX_GLIDE_HW)/glide3/src/xdraw3_3dnow.o \
$(FX_GLIDE_HW)/glide3/src/xtexdl_3dnow.o
endif
ifeq ($(USE_MMX),1)
GLIDE_OBJECTS += \
$(FX_GLIDE_HW)/glide3/src/xtexdl_mmx.o
endif
ifeq ($(USE_SSE),1)
GLIDE_OBJECTS += \
$(FX_GLIDE_HW)/glide3/src/xdraw2_sse.o \
$(FX_GLIDE_HW)/glide3/src/xdraw3_sse.o
endif
ifeq ($(USE_SSE2),1)
GLIDE_OBJECTS += \
$(FX_GLIDE_HW)/glide3/src/xtexdl_sse2.o
endif
else
GLIDE_OBJECTS += \
$(FX_GLIDE_HW)/glide3/src/gxdraw.o
endif
GLIDE_OBJECTS += \
@@ -240,27 +269,35 @@ h3/glide3/src/glfb.o: h3/glide3/src/glfb.c.save
h3/glide3/src/gsst.o: h3/glide3/src/gsst.c.save
$(CC) -o $@ $(CFLAGS) -x c -c $<
h3/glide3/src/xtexdl_3dnow.o: h3/glide3/src/xtexdl.S
$(CC) -o $@ $(CFLAGS) -c $<
h3/glide3/src/xdraw2_def.o: h3/glide3/src/xdraw2.S
$(CC) -o $@ $(CFLAGS) -UGL_AMD3D -c $<
h3/glide3/src/xdraw2_3dnow.o: h3/glide3/src/xdraw2.S
$(CC) -o $@ $(CFLAGS) -c $<
h3/glide3/src/xdraw3_def.o: h3/glide3/src/xdraw3.S
$(CC) -o $@ $(CFLAGS) -UGL_AMD3D -c $<
h3/glide3/src/xtexdl_3dnow.o: h3/glide3/src/xtexdl.S
$(CC) -o $@ $(CFLAGS) -c $<
h3/glide3/src/xdraw2_3dnow.o: h3/glide3/src/xdraw2.S
$(CC) -o $@ $(CFLAGS) -c $<
h3/glide3/src/xdraw3_3dnow.o: h3/glide3/src/xdraw3.S
$(CC) -o $@ $(CFLAGS) -c $<
h5/glide3/src/xtexdl_3dnow.o: h5/glide3/src/xtexdl.asm
h5/glide3/src/xdraw2_def.o: $(FX_GLIDE_HW)/glide3/src/xdraw2.asm
$(AS) -o $@ $(ASFLAGS) $<
h5/glide3/src/xdraw2_def.o: h5/glide3/src/xdraw2.asm
$(AS) -o $@ $(ASFLAGS) -UGL_AMD3D $<
h5/glide3/src/xdraw2_3dnow.o: h5/glide3/src/xdraw2.asm
$(AS) -o $@ $(ASFLAGS) $<
h5/glide3/src/xdraw3_def.o: h5/glide3/src/xdraw3.asm
$(AS) -o $@ $(ASFLAGS) -UGL_AMD3D $<
h5/glide3/src/xdraw3_3dnow.o: h5/glide3/src/xdraw3.asm
h5/glide3/src/xdraw3_def.o: $(FX_GLIDE_HW)/glide3/src/xdraw3.asm
$(AS) -o $@ $(ASFLAGS) $<
h5/glide3/src/xdraw2_3dnow.o: $(FX_GLIDE_HW)/glide3/src/xdraw2.asm
$(AS) -o $@ $(ASFLAGS) -DGL_AMD3D=1 $<
h5/glide3/src/xdraw3_3dnow.o: $(FX_GLIDE_HW)/glide3/src/xdraw3.asm
$(AS) -o $@ $(ASFLAGS) -DGL_AMD3D=1 $<
h5/glide3/src/xtexdl_3dnow.o: $(FX_GLIDE_HW)/glide3/src/xtexdl.asm
$(AS) -o $@ $(ASFLAGS) -DGL_AMD3D=1 $<
h5/glide3/src/xtexdl_mmx.o: $(FX_GLIDE_HW)/glide3/src/xtexdl.asm
$(AS) -o $@ $(ASFLAGS) -DGL_MMX=1 $<
h5/glide3/src/xdraw2_sse.o: $(FX_GLIDE_HW)/glide3/src/xdraw2.asm
$(AS) -o $@ $(ASFLAGS) -DGL_SSE=1 $<
h5/glide3/src/xdraw3_sse.o: $(FX_GLIDE_HW)/glide3/src/xdraw3.asm
$(AS) -o $@ $(ASFLAGS) -DGL_SSE=1 $<
h5/glide3/src/xtexdl_sse2.o: $(FX_GLIDE_HW)/glide3/src/xtexdl.asm
$(AS) -o $@ $(ASFLAGS) -DGL_SSE2=1 $<
$(GLIDE_OBJECTS): $(FX_GLIDE_HW)/glide3/src/fxinline.h $(FX_GLIDE_HW)/glide3/src/fxgasm.h
@@ -275,7 +312,7 @@ GENDATE = h5/incsrc/gendate.h
endif
fxgasm.exe: $(FX_GLIDE_HW)/glide3/src/fxgasm.c $(GENDATE)
$(CC) -o $@ $(CFLAGS) -DNASM $<
$(CC) -o $@ $(CFLAGS) $<
$(GENDATE): gendate.exe
$< > $@
@@ -284,7 +321,7 @@ gendate.exe: h5/incsrc/gendate.c
$(CC) -o $@ $(CFLAGS) $<
###############################################################################
# targets: clean, realclean
# clean, realclean
###############################################################################
clean:

View File

@@ -5,9 +5,6 @@
# Web : http://www.geocities.com/dborca
#
# $Header$
# $Log$
# Revision 1.1.2.2 2003/06/13 07:22:59 dborca
# more fixes to NASM sources
#

View File

@@ -5,15 +5,6 @@
# Web : http://www.geocities.com/dborca
#
# $Header$
# $Log$
# Revision 1.1.2.3 2003/07/01 11:13:34 dborca
# enabled NAPALM for tests
#
# Revision 1.1.2.2 2003/06/13 07:22:59 dborca
# more fixes to NASM sources
#
# Revision 1.1.2.1 2003/06/07 09:53:25 dborca
# initial checkin for NASM sources
#