⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile

📁 Viterbi编码解码算法
💻
字号:
CFLAGS=-Wall -O9 -march=i686 -g

CLIB=viterbi27.o viterbi29.o parity.o

MMXLIB=viterbi27mmx.o mmxbfly27.o viterbi29mmx.o mmxbfly29.o cpu_features.o

SSELIB=viterbi27sse.o ssebfly27.o viterbi29sse.o ssebfly29.o cpu_features.o

SSE2LIB=viterbi27sse2.o sse2bfly27.o viterbi29sse2.o sse2bfly29.o cpu_features.o

all: vtest27 vtest27mmx vtest27sse vtest27sse2 \
	vtest29 vtest29mmx vtest29sse vtest29sse2 libs

libs: libviterbi.a libviterbimmx.a libviterbisse.a libviterbisse2.a

vtest27: vtest27.o libviterbi.a
	gcc -g -o vtest27 vtest27.o libviterbi.a

vtest27mmx: vtest27mmx.o libviterbimmx.a
	gcc -g -o vtest27mmx vtest27mmx.o libviterbimmx.a

vtest27sse: vtest27sse.o libviterbisse.a
	gcc -g -o vtest27sse vtest27sse.o libviterbisse.a

vtest27sse2: vtest27sse2.o libviterbisse2.a
	gcc -g -o vtest27sse2 vtest27sse2.o libviterbisse2.a

vtest29: vtest29.o libviterbi.a
	gcc -g -o vtest29 vtest29.o libviterbi.a

vtest29mmx: vtest29mmx.o libviterbimmx.a
	gcc -g -o vtest29mmx vtest29mmx.o libviterbimmx.a

vtest29sse: vtest29sse.o libviterbisse.a
	gcc -g -o vtest29sse vtest29sse.o libviterbisse.a

vtest29sse2: vtest29sse2.o libviterbisse2.a
	gcc -g -o vtest29sse2 vtest29sse2.o libviterbisse2.a

vtest27.o: vtest27.c viterbi27.h parity.h
	gcc -o vtest27.o $(CFLAGS) -c vtest27.c

vtest27mmx.o: vtest27.c viterbi27.h parity.h
	gcc -o vtest27mmx.o $(CFLAGS) -DMMX=1 -c vtest27.c

vtest27sse.o: vtest27.c viterbi27.h parity.h
	gcc -o vtest27sse.o $(CFLAGS) -DSSE=1 -c vtest27.c

vtest27sse2.o: vtest27.c viterbi27.h parity.h
	gcc -o vtest27sse2.o $(CFLAGS) -DSSE2=1 -c vtest27.c

vtest29.o: vtest29.c viterbi29.h parity.h
	gcc -o vtest29.o $(CFLAGS) -c vtest29.c

vtest29mmx.o: vtest29.c viterbi29.h parity.h
	gcc -o vtest29mmx.o $(CFLAGS) -DMMX=1 -c vtest29.c

vtest29sse.o: vtest29.c viterbi29.h parity.h
	gcc -o vtest29sse.o $(CFLAGS) -DSSE=1 -c vtest29.c

vtest29sse2.o: vtest29.c viterbi29.h parity.h
	gcc -o vtest29sse2.o $(CFLAGS) -DSSE2=1 -c vtest29.c


libviterbi.a: $(CLIB)
	ar rv libviterbi.a $(CLIB)

libviterbimmx.a: $(MMXLIB)
	ar rv libviterbimmx.a $(MMXLIB)

libviterbisse.a: $(SSELIB)
	ar rv libviterbisse.a $(SSELIB)

libviterbisse2.a: $(SSE2LIB)
	ar rv libviterbisse2.a $(SSE2LIB)

viterbi27mmx.o: viterbi27.c viterbi27.h parity.h
	gcc -c $(CFLAGS) -DMMX=1 -o viterbi27mmx.o viterbi27.c

viterbi27sse.o: viterbi27.c viterbi27.h parity.h
	gcc -c $(CFLAGS) -DSSE=1 -o viterbi27sse.o viterbi27.c

viterbi27sse2.o: viterbi27.c viterbi27.h parity.h
	gcc -c $(CFLAGS) -DSSE2=1 -o viterbi27sse2.o viterbi27.c

viterbi29mmx.o: viterbi29.c viterbi29.h parity.h
	gcc -c $(CFLAGS) -DMMX=1 -o viterbi29mmx.o viterbi29.c

viterbi29sse.o: viterbi29.c viterbi29.h parity.h
	gcc -c $(CFLAGS) -DSSE=1 -o viterbi29sse.o viterbi29.c

viterbi29sse2.o: viterbi29.c viterbi29.h parity.h
	gcc -c $(CFLAGS) -DSSE2=1 -o viterbi29sse2.o viterbi29.c

clean:
	rm -f *.o *.a vtest27 vtest27mmx vtest27sse vtest27sse2 \
	vtest29 vtest29mmx vtest29sse vtest29sse2


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -