Major overhaul of the x86 assembly for the decoder.
Reduced the divergence between x86-32 and x86-64 (there is now basically one function that is different between them, and that due to the extra registers x86-64 gives us). Used named parameters for readability (requires gcc 3.1 or later). All global symbol references should now be handled by gcc, so there should be no problems with/without -fPIC, or various underscore conventions for different toolchains (e.g., OS X). Currently satisfies register allocations even WITH -fPIC and WITHOUT -fomit-frame-pointer (the worst case scenario). The same cannot be said for the encoder's asm, on basically any of these points. svn path=/trunk/theora/; revision=12873
Showing
- lib/Makefile.am 12 additions, 12 deletionslib/Makefile.am
- lib/dec/state.c 12 additions, 15 deletionslib/dec/state.c
- lib/dec/x86/mmxfrag.c 185 additions, 123 deletionslib/dec/x86/mmxfrag.c
- lib/dec/x86/mmxidct.c 426 additions, 357 deletionslib/dec/x86/mmxidct.c
- lib/dec/x86/mmxstate.c 384 additions, 282 deletionslib/dec/x86/mmxstate.c
- lib/dec/x86/x86state.c 2 additions, 7 deletionslib/dec/x86/x86state.c
- lib/internal.h 4 additions, 2 deletionslib/internal.h
Loading
Please register or sign in to comment