many changes to which asm functions are enabled on which cpus.
authorLoren Merritt <pengvado@akuvian.org>
Sat, 7 Jun 2008 05:31:22 +0000 (23:31 -0600)
committerLoren Merritt <pengvado@akuvian.org>
Sun, 8 Jun 2008 05:02:04 +0000 (23:02 -0600)
commit86c70b0fccc46752e03d3ed7fc5733dab31b5a41
treee54f7b1259d01647c2f097fc989b2eba7c76fb25
parent2998b17a64cb41ecf3389cc9f5a44c6f07620487
many changes to which asm functions are enabled on which cpus.
with Phenom, 3dnow is no longer equivalent to "sse2 is slow", so make a new flag for that.
some sse2 functions are useful only on Core2 and Phenom, so make a "sse2 is fast" flag for that.
some ssse3 instructions didn't become useful until Penryn, so yet another flag.
disable sse2 completely on Pentium M and Core1, because it's uniformly slower than mmx.
enable some sse2 functions on Athlon64 that always were faster and we just didn't notice.
remove mc_luma_sse3, because the only cpu that has lddqu (namely Pentium 4D) doesn't have "sse2 is fast".
don't print mmx1, sse1, nor 3dnow in the detected cpuflags, since we don't really have any such functions. likewise don't print sse3 unless it's used (Pentium 4D).
12 files changed:
common/cpu.c
common/cpu.h
common/dct.c
common/frame.c
common/pixel.c
common/x86/dct-a.asm
common/x86/mc-a.asm
common/x86/mc-c.c
common/x86/predict-c.c
encoder/encoder.c
tools/checkasm.c
x264.h