seal 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.yardopts +1 -0
- data/LICENSE +13 -0
- data/README.md +265 -0
- data/ext/seal/extconf.rb +45 -0
- data/include/al/al.h +724 -0
- data/include/al/alc.h +277 -0
- data/include/al/efx-presets.h +402 -0
- data/include/al/efx.h +758 -0
- data/include/mpg123/mpg123.h +1034 -0
- data/include/ogg/config_types.h +25 -0
- data/include/ogg/ogg.h +210 -0
- data/include/ogg/os_types.h +147 -0
- data/include/seal.h +23 -0
- data/include/seal/buf.h +143 -0
- data/include/seal/core.h +95 -0
- data/include/seal/efs.h +112 -0
- data/include/seal/err.h +93 -0
- data/include/seal/fmt.h +58 -0
- data/include/seal/listener.h +103 -0
- data/include/seal/raw.h +86 -0
- data/include/seal/rvb.h +520 -0
- data/include/seal/src.h +413 -0
- data/include/seal/stream.h +81 -0
- data/include/vorbis/codec.h +243 -0
- data/include/vorbis/vorbisfile.h +206 -0
- data/mpg123/AUTHORS +150 -0
- data/mpg123/COPYING +773 -0
- data/mpg123/ChangeLog +3 -0
- data/mpg123/INSTALL +111 -0
- data/mpg123/Makefile.am +99 -0
- data/mpg123/Makefile.in +1043 -0
- data/mpg123/NEWS +1200 -0
- data/mpg123/NEWS.libmpg123 +133 -0
- data/mpg123/README +203 -0
- data/mpg123/TODO +38 -0
- data/mpg123/aclocal.m4 +1168 -0
- data/mpg123/build/config.guess +1530 -0
- data/mpg123/build/config.sub +1782 -0
- data/mpg123/build/depcomp +707 -0
- data/mpg123/build/install-sh +527 -0
- data/mpg123/build/ltmain.sh +9655 -0
- data/mpg123/build/missing +330 -0
- data/mpg123/configure +20267 -0
- data/mpg123/configure.ac +2178 -0
- data/mpg123/doc/ACCURACY +2 -0
- data/mpg123/doc/BENCHMARKING +110 -0
- data/mpg123/doc/BUGS +3 -0
- data/mpg123/doc/CONTACT +17 -0
- data/mpg123/doc/LICENSE +22 -0
- data/mpg123/doc/Makefile.am +32 -0
- data/mpg123/doc/Makefile.in +490 -0
- data/mpg123/doc/PATENTS +39 -0
- data/mpg123/doc/README.3DNOW +56 -0
- data/mpg123/doc/README.gain +171 -0
- data/mpg123/doc/README.remote +218 -0
- data/mpg123/doc/ROAD_TO_LGPL +270 -0
- data/mpg123/doc/THANKS +13 -0
- data/mpg123/doc/TODO +63 -0
- data/mpg123/doc/doxy_examples.c +21 -0
- data/mpg123/doc/doxygen.conf +41 -0
- data/mpg123/doc/doxyhead.xhtml +12 -0
- data/mpg123/doc/examples/dump_seekindex.c +41 -0
- data/mpg123/doc/examples/extract_frames.c +92 -0
- data/mpg123/doc/examples/feedseek.c +238 -0
- data/mpg123/doc/examples/id3dump.c +178 -0
- data/mpg123/doc/examples/mpg123_to_wav.c +118 -0
- data/mpg123/doc/examples/mpglib.c +92 -0
- data/mpg123/doc/examples/scan.c +47 -0
- data/mpg123/doc/libmpg123_speed.txt +84 -0
- data/mpg123/equalize.dat +37 -0
- data/mpg123/libmpg123.pc.in +11 -0
- data/mpg123/m4/addrconfig.m4 +34 -0
- data/mpg123/m4/libtool.m4 +7982 -0
- data/mpg123/m4/ltoptions.m4 +384 -0
- data/mpg123/m4/ltsugar.m4 +123 -0
- data/mpg123/m4/ltversion.m4 +23 -0
- data/mpg123/m4/lt~obsolete.m4 +98 -0
- data/mpg123/makedll.sh +19 -0
- data/mpg123/man1/mpg123.1 +512 -0
- data/mpg123/mpg123.spec +68 -0
- data/mpg123/mpg123.spec.in +68 -0
- data/mpg123/ports/MSVC++/2005/libmpg123/libmpg123.vcproj +741 -0
- data/mpg123/ports/MSVC++/2008/dump_seekindex/dump_seekindex.vcproj +194 -0
- data/mpg123/ports/MSVC++/2008/feedseek/feedseek.vcproj +195 -0
- data/mpg123/ports/MSVC++/2008/libmpg123/libmpg123.vcproj +1357 -0
- data/mpg123/ports/MSVC++/2008/mpg123.sln +44 -0
- data/mpg123/ports/MSVC++/2008/mpglib/mpglib.vcproj +191 -0
- data/mpg123/ports/MSVC++/2008/scan/scan.vcproj +195 -0
- data/mpg123/ports/MSVC++/2008clr/2008clr.sln +81 -0
- data/mpg123/ports/MSVC++/2008clr/examples/ReplaceReaderclr/Program.cs +435 -0
- data/mpg123/ports/MSVC++/2008clr/examples/ReplaceReaderclr/Properties/AssemblyInfo.cs +36 -0
- data/mpg123/ports/MSVC++/2008clr/examples/ReplaceReaderclr/ReplaceReaderclr.csproj +72 -0
- data/mpg123/ports/MSVC++/2008clr/examples/feedseekclr/Program.cs +331 -0
- data/mpg123/ports/MSVC++/2008clr/examples/feedseekclr/Properties/AssemblyInfo.cs +36 -0
- data/mpg123/ports/MSVC++/2008clr/examples/feedseekclr/feedseekclr.csproj +71 -0
- data/mpg123/ports/MSVC++/2008clr/examples/scanclr/Program.cs +79 -0
- data/mpg123/ports/MSVC++/2008clr/examples/scanclr/Properties/AssemblyInfo.cs +36 -0
- data/mpg123/ports/MSVC++/2008clr/examples/scanclr/scanclr.csproj +70 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/AssemblyInfo.cpp +76 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/ReadMe.txt +165 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/advanced.cpp +91 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/advanced.h +130 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/dllmain.cpp +19 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/enum.h +218 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/error.cpp +48 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/error.h +134 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/id3v1.cpp +92 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/id3v1.h +132 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/id3v2.cpp +138 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/id3v2.h +152 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/mpg123clr.cpp +896 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/mpg123clr.h +953 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/mpg123clr.rc +102 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/mpg123clr.vcproj +328 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/resource.h +14 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/stdafx.cpp +8 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/stdafx.h +38 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/string.cpp +166 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/string.h +265 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/targetver.h +24 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/text.cpp +67 -0
- data/mpg123/ports/MSVC++/2008clr/mpg123clr/text.h +111 -0
- data/mpg123/ports/MSVC++/2010/dump_seekindex/dump_seekindex.vcxproj +90 -0
- data/mpg123/ports/MSVC++/2010/dump_seekindex/dump_seekindex.vcxproj.filters +6 -0
- data/mpg123/ports/MSVC++/2010/feedseek/feedseek.vcxproj +95 -0
- data/mpg123/ports/MSVC++/2010/feedseek/feedseek.vcxproj.filters +6 -0
- data/mpg123/ports/MSVC++/2010/libmpg123/libmpg123.vcxproj +960 -0
- data/mpg123/ports/MSVC++/2010/libmpg123/libmpg123.vcxproj.user +3 -0
- data/mpg123/ports/MSVC++/2010/libmpg123/yasm.exe +0 -0
- data/mpg123/ports/MSVC++/2010/mpg123.sln +38 -0
- data/mpg123/ports/MSVC++/2010/scan/scan.vcxproj +93 -0
- data/mpg123/ports/MSVC++/2010/scan/scan.vcxproj.filters +6 -0
- data/mpg123/ports/MSVC++/CMP3Stream/INCLUDE/CORE/CORE_FileIn.H +15 -0
- data/mpg123/ports/MSVC++/CMP3Stream/INCLUDE/CORE/SourceFilter_MP3.H +139 -0
- data/mpg123/ports/MSVC++/CMP3Stream/INCLUDE/IIEP_Def.H +206 -0
- data/mpg123/ports/MSVC++/CMP3Stream/INCLUDE/IIEP_FileIn.H +167 -0
- data/mpg123/ports/MSVC++/CMP3Stream/README +4 -0
- data/mpg123/ports/MSVC++/CMP3Stream/SOURCE/CORE_FileIn.CPP +462 -0
- data/mpg123/ports/MSVC++/CMP3Stream/SOURCE/CORE_Log.CPP +122 -0
- data/mpg123/ports/MSVC++/CMP3Stream/SOURCE/CORE_Mutex.CPP +35 -0
- data/mpg123/ports/MSVC++/CMP3Stream/SOURCE/SourceFilter_MP3Stream.CPP +586 -0
- data/mpg123/ports/MSVC++/CMP3Stream/libMPG123/PLACE_LIBMPG123_SOURCES_HERE +0 -0
- data/mpg123/ports/MSVC++/CMP3Stream/libMPG123/libMPG123.vcproj +245 -0
- data/mpg123/ports/MSVC++/config.h +35 -0
- data/mpg123/ports/MSVC++/examples/feedseek.c +240 -0
- data/mpg123/ports/MSVC++/examples/scan.c +47 -0
- data/mpg123/ports/MSVC++/mpg123.h +46 -0
- data/mpg123/ports/MSVC++/msvc.c +59 -0
- data/mpg123/ports/README +26 -0
- data/mpg123/ports/Sony_PSP/Makefile.psp +38 -0
- data/mpg123/ports/Sony_PSP/README +11 -0
- data/mpg123/ports/Sony_PSP/config.h +368 -0
- data/mpg123/ports/Sony_PSP/readers.c.patch +2 -0
- data/mpg123/ports/Xcode/config.h +197 -0
- data/mpg123/ports/Xcode/mpg123.h +17 -0
- data/mpg123/ports/Xcode/mpg123.xcodeproj/project.pbxproj +670 -0
- data/mpg123/ports/mpg123_.pas +478 -0
- data/mpg123/scripts/benchmark-cpu.pl +56 -0
- data/mpg123/scripts/tag_lyrics.py +76 -0
- data/mpg123/src/Makefile.am +186 -0
- data/mpg123/src/Makefile.in +1097 -0
- data/mpg123/src/audio.c +725 -0
- data/mpg123/src/audio.h +106 -0
- data/mpg123/src/buffer.c +312 -0
- data/mpg123/src/buffer.h +45 -0
- data/mpg123/src/common.c +240 -0
- data/mpg123/src/common.h +29 -0
- data/mpg123/src/config.h.in +436 -0
- data/mpg123/src/control_generic.c +809 -0
- data/mpg123/src/equalizer.c +48 -0
- data/mpg123/src/genre.c +271 -0
- data/mpg123/src/genre.h +15 -0
- data/mpg123/src/getlopt.c +148 -0
- data/mpg123/src/getlopt.h +77 -0
- data/mpg123/src/httpget.c +700 -0
- data/mpg123/src/httpget.h +66 -0
- data/mpg123/src/legacy_module.c +74 -0
- data/mpg123/src/libmpg123/Makefile.am +141 -0
- data/mpg123/src/libmpg123/Makefile.in +919 -0
- data/mpg123/src/libmpg123/compat.c +138 -0
- data/mpg123/src/libmpg123/compat.h +178 -0
- data/mpg123/src/libmpg123/dct36_3dnow.S +505 -0
- data/mpg123/src/libmpg123/dct36_3dnowext.S +512 -0
- data/mpg123/src/libmpg123/dct64.c +174 -0
- data/mpg123/src/libmpg123/dct64_3dnow.S +712 -0
- data/mpg123/src/libmpg123/dct64_3dnowext.S +714 -0
- data/mpg123/src/libmpg123/dct64_altivec.c +315 -0
- data/mpg123/src/libmpg123/dct64_i386.c +336 -0
- data/mpg123/src/libmpg123/dct64_i486.c +342 -0
- data/mpg123/src/libmpg123/dct64_mmx.S +811 -0
- data/mpg123/src/libmpg123/dct64_neon.S +297 -0
- data/mpg123/src/libmpg123/dct64_neon_float.S +270 -0
- data/mpg123/src/libmpg123/dct64_sse.S +454 -0
- data/mpg123/src/libmpg123/dct64_sse_float.S +401 -0
- data/mpg123/src/libmpg123/dct64_x86_64.S +464 -0
- data/mpg123/src/libmpg123/dct64_x86_64_float.S +426 -0
- data/mpg123/src/libmpg123/debug.h +171 -0
- data/mpg123/src/libmpg123/decode.h +268 -0
- data/mpg123/src/libmpg123/dither.c +119 -0
- data/mpg123/src/libmpg123/dither.h +23 -0
- data/mpg123/src/libmpg123/equalizer.c +17 -0
- data/mpg123/src/libmpg123/equalizer_3dnow.S +70 -0
- data/mpg123/src/libmpg123/feature.c +106 -0
- data/mpg123/src/libmpg123/format.c +521 -0
- data/mpg123/src/libmpg123/frame.c +1046 -0
- data/mpg123/src/libmpg123/frame.h +410 -0
- data/mpg123/src/libmpg123/gapless.h +119 -0
- data/mpg123/src/libmpg123/getbits.h +100 -0
- data/mpg123/src/libmpg123/getcpuflags.S +91 -0
- data/mpg123/src/libmpg123/getcpuflags.h +47 -0
- data/mpg123/src/libmpg123/huffman.h +340 -0
- data/mpg123/src/libmpg123/icy.c +32 -0
- data/mpg123/src/libmpg123/icy.h +38 -0
- data/mpg123/src/libmpg123/icy2utf8.c +438 -0
- data/mpg123/src/libmpg123/icy2utf8.h +10 -0
- data/mpg123/src/libmpg123/id3.c +999 -0
- data/mpg123/src/libmpg123/id3.h +43 -0
- data/mpg123/src/libmpg123/index.c +134 -0
- data/mpg123/src/libmpg123/index.h +59 -0
- data/mpg123/src/libmpg123/intsym.h +256 -0
- data/mpg123/src/libmpg123/l12_integer_tables.h +278 -0
- data/mpg123/src/libmpg123/l2tables.h +164 -0
- data/mpg123/src/libmpg123/l3_integer_tables.h +1002 -0
- data/mpg123/src/libmpg123/layer1.c +155 -0
- data/mpg123/src/libmpg123/layer2.c +371 -0
- data/mpg123/src/libmpg123/layer3.c +2053 -0
- data/mpg123/src/libmpg123/lfs_alias.c +252 -0
- data/mpg123/src/libmpg123/lfs_wrap.c +751 -0
- data/mpg123/src/libmpg123/libmpg123.c +1607 -0
- data/mpg123/src/libmpg123/mangle.h +74 -0
- data/mpg123/src/libmpg123/mpeghead.h +87 -0
- data/mpg123/src/libmpg123/mpg123.h.in +1075 -0
- data/mpg123/src/libmpg123/mpg123lib_intern.h +338 -0
- data/mpg123/src/libmpg123/ntom.c +148 -0
- data/mpg123/src/libmpg123/optimize.c +964 -0
- data/mpg123/src/libmpg123/optimize.h +219 -0
- data/mpg123/src/libmpg123/parse.c +1179 -0
- data/mpg123/src/libmpg123/parse.h +25 -0
- data/mpg123/src/libmpg123/reader.h +137 -0
- data/mpg123/src/libmpg123/readers.c +1235 -0
- data/mpg123/src/libmpg123/sample.h +152 -0
- data/mpg123/src/libmpg123/stringbuf.c +163 -0
- data/mpg123/src/libmpg123/synth.c +816 -0
- data/mpg123/src/libmpg123/synth.h +196 -0
- data/mpg123/src/libmpg123/synth_3dnow.S +318 -0
- data/mpg123/src/libmpg123/synth_3dnowext.S +6 -0
- data/mpg123/src/libmpg123/synth_8bit.c +142 -0
- data/mpg123/src/libmpg123/synth_8bit.h +86 -0
- data/mpg123/src/libmpg123/synth_altivec.c +1057 -0
- data/mpg123/src/libmpg123/synth_arm.S +271 -0
- data/mpg123/src/libmpg123/synth_arm_accurate.S +287 -0
- data/mpg123/src/libmpg123/synth_i486.c +252 -0
- data/mpg123/src/libmpg123/synth_i586.S +336 -0
- data/mpg123/src/libmpg123/synth_i586_dither.S +375 -0
- data/mpg123/src/libmpg123/synth_mmx.S +125 -0
- data/mpg123/src/libmpg123/synth_mono.h +64 -0
- data/mpg123/src/libmpg123/synth_neon.S +123 -0
- data/mpg123/src/libmpg123/synth_neon_accurate.S +173 -0
- data/mpg123/src/libmpg123/synth_neon_float.S +149 -0
- data/mpg123/src/libmpg123/synth_neon_s32.S +168 -0
- data/mpg123/src/libmpg123/synth_ntom.h +213 -0
- data/mpg123/src/libmpg123/synth_real.c +404 -0
- data/mpg123/src/libmpg123/synth_s32.c +411 -0
- data/mpg123/src/libmpg123/synth_sse.S +6 -0
- data/mpg123/src/libmpg123/synth_sse3d.h +246 -0
- data/mpg123/src/libmpg123/synth_sse_accurate.S +294 -0
- data/mpg123/src/libmpg123/synth_sse_float.S +241 -0
- data/mpg123/src/libmpg123/synth_sse_s32.S +306 -0
- data/mpg123/src/libmpg123/synth_stereo_neon.S +175 -0
- data/mpg123/src/libmpg123/synth_stereo_neon_accurate.S +262 -0
- data/mpg123/src/libmpg123/synth_stereo_neon_float.S +220 -0
- data/mpg123/src/libmpg123/synth_stereo_neon_s32.S +247 -0
- data/mpg123/src/libmpg123/synth_stereo_sse_accurate.S +508 -0
- data/mpg123/src/libmpg123/synth_stereo_sse_float.S +416 -0
- data/mpg123/src/libmpg123/synth_stereo_sse_s32.S +540 -0
- data/mpg123/src/libmpg123/synth_stereo_x86_64.S +335 -0
- data/mpg123/src/libmpg123/synth_stereo_x86_64_accurate.S +454 -0
- data/mpg123/src/libmpg123/synth_stereo_x86_64_float.S +396 -0
- data/mpg123/src/libmpg123/synth_stereo_x86_64_s32.S +473 -0
- data/mpg123/src/libmpg123/synth_x86_64.S +244 -0
- data/mpg123/src/libmpg123/synth_x86_64_accurate.S +301 -0
- data/mpg123/src/libmpg123/synth_x86_64_float.S +259 -0
- data/mpg123/src/libmpg123/synth_x86_64_s32.S +312 -0
- data/mpg123/src/libmpg123/synths.h +52 -0
- data/mpg123/src/libmpg123/tabinit.c +294 -0
- data/mpg123/src/libmpg123/tabinit_mmx.S +210 -0
- data/mpg123/src/libmpg123/testcpu.c +35 -0
- data/mpg123/src/libmpg123/true.h +14 -0
- data/mpg123/src/local.c +63 -0
- data/mpg123/src/local.h +21 -0
- data/mpg123/src/metaprint.c +373 -0
- data/mpg123/src/metaprint.h +17 -0
- data/mpg123/src/module.c +306 -0
- data/mpg123/src/module.h +48 -0
- data/mpg123/src/mpg123.c +1405 -0
- data/mpg123/src/mpg123app.h +171 -0
- data/mpg123/src/output/Makefile.am +213 -0
- data/mpg123/src/output/Makefile.in +1238 -0
- data/mpg123/src/output/aix.c +300 -0
- data/mpg123/src/output/alib.c +209 -0
- data/mpg123/src/output/alsa.c +297 -0
- data/mpg123/src/output/arts.c +117 -0
- data/mpg123/src/output/coreaudio.c +370 -0
- data/mpg123/src/output/dummy.c +78 -0
- data/mpg123/src/output/esd.c +167 -0
- data/mpg123/src/output/hp.c +184 -0
- data/mpg123/src/output/jack.c +450 -0
- data/mpg123/src/output/mint.c +197 -0
- data/mpg123/src/output/nas.c +335 -0
- data/mpg123/src/output/openal.c +197 -0
- data/mpg123/src/output/os2.c +665 -0
- data/mpg123/src/output/oss.c +319 -0
- data/mpg123/src/output/portaudio.c +255 -0
- data/mpg123/src/output/pulse.c +164 -0
- data/mpg123/src/output/sdl.c +206 -0
- data/mpg123/src/output/sgi.c +213 -0
- data/mpg123/src/output/sndio.c +161 -0
- data/mpg123/src/output/sun.c +281 -0
- data/mpg123/src/output/win32.c +229 -0
- data/mpg123/src/playlist.c +596 -0
- data/mpg123/src/playlist.h +52 -0
- data/mpg123/src/resolver.c +319 -0
- data/mpg123/src/resolver.h +25 -0
- data/mpg123/src/sfifo.c +146 -0
- data/mpg123/src/sfifo.h +95 -0
- data/mpg123/src/streamdump.c +74 -0
- data/mpg123/src/streamdump.h +20 -0
- data/mpg123/src/term.c +479 -0
- data/mpg123/src/term.h +81 -0
- data/mpg123/src/tests/noise.c +52 -0
- data/mpg123/src/tests/plain_id3.c +109 -0
- data/mpg123/src/tests/seek_accuracy.c +261 -0
- data/mpg123/src/tests/seek_whence.c +56 -0
- data/mpg123/src/tests/testtext.h +34 -0
- data/mpg123/src/tests/text.c +80 -0
- data/mpg123/src/wav.c +464 -0
- data/mpg123/src/wavhead.h +68 -0
- data/mpg123/src/win32_net.c +599 -0
- data/mpg123/src/win32_support.c +191 -0
- data/mpg123/src/win32_support.h +152 -0
- data/mpg123/src/xfermem.c +321 -0
- data/mpg123/src/xfermem.h +74 -0
- data/mpg123/windows-builds.sh +137 -0
- data/msvc/lib/OpenAL32.lib +0 -0
- data/spec/fixtures/heal.ogg +0 -0
- data/spec/fixtures/tone_up.wav +0 -0
- data/spec/seal/buffer_spec.rb +37 -0
- data/spec/seal/core_spec.rb +29 -0
- data/spec/seal/effect_slot_spec.rb +38 -0
- data/spec/seal/listener_spec.rb +33 -0
- data/spec/seal/reverb_spec.rb +51 -0
- data/spec/seal/source_spec.rb +370 -0
- data/spec/seal/stream_spec.rb +38 -0
- data/spec/spec_helper.rb +45 -0
- data/spec/support/attribute_examples.rb +75 -0
- data/spec/support/audio_object_with_format.rb +27 -0
- data/spec/support/movable_object.rb +22 -0
- data/src/libogg/bitwise.c +857 -0
- data/src/libogg/framing.c +2093 -0
- data/src/libvorbis/backends.h +144 -0
- data/src/libvorbis/bitrate.c +253 -0
- data/src/libvorbis/bitrate.h +59 -0
- data/src/libvorbis/block.c +1046 -0
- data/src/libvorbis/codebook.c +484 -0
- data/src/libvorbis/codebook.h +119 -0
- data/src/libvorbis/codec_internal.h +167 -0
- data/src/libvorbis/envelope.c +375 -0
- data/src/libvorbis/envelope.h +80 -0
- data/src/libvorbis/floor0.c +221 -0
- data/src/libvorbis/floor1.c +1100 -0
- data/src/libvorbis/highlevel.h +58 -0
- data/src/libvorbis/info.c +668 -0
- data/src/libvorbis/lookup.c +94 -0
- data/src/libvorbis/lookup.h +32 -0
- data/src/libvorbis/lookup_data.h +192 -0
- data/src/libvorbis/lpc.c +160 -0
- data/src/libvorbis/lpc.h +29 -0
- data/src/libvorbis/lsp.c +456 -0
- data/src/libvorbis/lsp.h +28 -0
- data/src/libvorbis/mapping0.c +816 -0
- data/src/libvorbis/masking.h +785 -0
- data/src/libvorbis/mdct.c +563 -0
- data/src/libvorbis/mdct.h +71 -0
- data/src/libvorbis/misc.h +57 -0
- data/src/libvorbis/os.h +186 -0
- data/src/libvorbis/psy.c +1206 -0
- data/src/libvorbis/psy.h +154 -0
- data/src/libvorbis/registry.c +45 -0
- data/src/libvorbis/registry.h +32 -0
- data/src/libvorbis/res0.c +889 -0
- data/src/libvorbis/scales.h +90 -0
- data/src/libvorbis/sharedbook.c +579 -0
- data/src/libvorbis/smallft.c +1255 -0
- data/src/libvorbis/smallft.h +34 -0
- data/src/libvorbis/synthesis.c +184 -0
- data/src/libvorbis/vorbisfile.c +2337 -0
- data/src/libvorbis/window.c +2135 -0
- data/src/libvorbis/window.h +26 -0
- data/src/rubyext.c +2329 -0
- data/src/seal/buf.c +124 -0
- data/src/seal/core.c +283 -0
- data/src/seal/efs.c +74 -0
- data/src/seal/err.c +118 -0
- data/src/seal/fmt.c +86 -0
- data/src/seal/listener.c +111 -0
- data/src/seal/mpg.c +174 -0
- data/src/seal/mpg.h +24 -0
- data/src/seal/ov.c +180 -0
- data/src/seal/ov.h +22 -0
- data/src/seal/raw.c +59 -0
- data/src/seal/reader.c +102 -0
- data/src/seal/reader.h +59 -0
- data/src/seal/rvb.c +368 -0
- data/src/seal/src.c +654 -0
- data/src/seal/stream.c +109 -0
- data/src/seal/threading.c +66 -0
- data/src/seal/threading.h +20 -0
- data/src/seal/wav.c +297 -0
- data/src/seal/wav.h +23 -0
- data/src/win32api.rb +29 -0
- metadata +563 -0
|
@@ -0,0 +1,342 @@
|
|
|
1
|
+
/*
|
|
2
|
+
dct64_i486.c: DCT64, a plain C variant for i486
|
|
3
|
+
|
|
4
|
+
copyright 1998-2006 by the mpg123 project - free software under the terms of the LGPL 2.1
|
|
5
|
+
see COPYING and AUTHORS files in distribution or http://mpg123.org
|
|
6
|
+
initially written by Fabrice Bellard
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
/* Discrete Cosine Tansform (DCT) for subband synthesis.
|
|
10
|
+
*
|
|
11
|
+
* This code is optimized for 80486. It should be compiled with gcc
|
|
12
|
+
* 2.7.2 or higher.
|
|
13
|
+
*
|
|
14
|
+
* Note: This code does not give the necessary accuracy. Moreover, no
|
|
15
|
+
* overflow test are done.
|
|
16
|
+
*
|
|
17
|
+
* (c) 1998 Fabrice Bellard.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
#include "mpg123lib_intern.h"
|
|
21
|
+
|
|
22
|
+
#define COS_0_0 16403
|
|
23
|
+
#define COS_0_1 16563
|
|
24
|
+
#define COS_0_2 16890
|
|
25
|
+
#define COS_0_3 17401
|
|
26
|
+
#define COS_0_4 18124
|
|
27
|
+
#define COS_0_5 19101
|
|
28
|
+
#define COS_0_6 20398
|
|
29
|
+
#define COS_0_7 22112
|
|
30
|
+
#define COS_0_8 24396
|
|
31
|
+
#define COS_0_9 27503
|
|
32
|
+
#define COS_0_10 31869
|
|
33
|
+
#define COS_0_11 38320
|
|
34
|
+
#define COS_0_12 48633
|
|
35
|
+
#define COS_0_13 67429
|
|
36
|
+
#define COS_0_14 111660
|
|
37
|
+
#define COS_0_15 333906
|
|
38
|
+
#define COS_1_0 16463
|
|
39
|
+
#define COS_1_1 17121
|
|
40
|
+
#define COS_1_2 18577
|
|
41
|
+
#define COS_1_3 21195
|
|
42
|
+
#define COS_1_4 25826
|
|
43
|
+
#define COS_1_5 34756
|
|
44
|
+
#define COS_1_6 56441
|
|
45
|
+
#define COS_1_7 167154
|
|
46
|
+
#define COS_2_0 16704
|
|
47
|
+
#define COS_2_1 19704
|
|
48
|
+
#define COS_2_2 29490
|
|
49
|
+
#define COS_2_3 83981
|
|
50
|
+
#define COS_3_0 17733
|
|
51
|
+
#define COS_3_1 42813
|
|
52
|
+
#define COS_4_0 23170
|
|
53
|
+
|
|
54
|
+
#define SETOUT(out,n,expr) out[FIR_BUFFER_SIZE*(n)]=(expr)
|
|
55
|
+
#define MULL(a,b) (((long long)(a)*(long long)(b)) >> 15)
|
|
56
|
+
#define MUL(a,b) \
|
|
57
|
+
(\
|
|
58
|
+
((!(b & 0x3F)) ? (((a)*(b >> 6)) >> 9) :\
|
|
59
|
+
((!(b & 0x1F)) ? (((a)*(b >> 5)) >> 10) :\
|
|
60
|
+
((!(b & 0x0F)) ? (((a)*(b >> 4)) >> 11) :\
|
|
61
|
+
((!(b & 0x07)) ? (((a)*(b >> 3)) >> 12) :\
|
|
62
|
+
((!(b & 0x03)) ? (((a)*(b >> 2)) >> 13) :\
|
|
63
|
+
((!(b & 0x01)) ? (((a)*(b >> 1)) >> 14) :\
|
|
64
|
+
(((a)*(b )) >> 15))))))))
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
void dct64_1_486(int *out0,int *out1,int *b1,int *b2)
|
|
68
|
+
{
|
|
69
|
+
b1[0x00] = b2[0x00] + b2[0x1F];
|
|
70
|
+
b1[0x1F] = MUL((b2[0x00] - b2[0x1F]),COS_0_0);
|
|
71
|
+
|
|
72
|
+
b1[0x01] = b2[0x01] + b2[0x1E];
|
|
73
|
+
b1[0x1E] = MUL((b2[0x01] - b2[0x1E]),COS_0_1);
|
|
74
|
+
|
|
75
|
+
b1[0x02] = b2[0x02] + b2[0x1D];
|
|
76
|
+
b1[0x1D] = MUL((b2[0x02] - b2[0x1D]),COS_0_2);
|
|
77
|
+
|
|
78
|
+
b1[0x03] = b2[0x03] + b2[0x1C];
|
|
79
|
+
b1[0x1C] = MUL((b2[0x03] - b2[0x1C]),COS_0_3);
|
|
80
|
+
|
|
81
|
+
b1[0x04] = b2[0x04] + b2[0x1B];
|
|
82
|
+
b1[0x1B] = MUL((b2[0x04] - b2[0x1B]),COS_0_4);
|
|
83
|
+
|
|
84
|
+
b1[0x05] = b2[0x05] + b2[0x1A];
|
|
85
|
+
b1[0x1A] = MUL((b2[0x05] - b2[0x1A]),COS_0_5);
|
|
86
|
+
|
|
87
|
+
b1[0x06] = b2[0x06] + b2[0x19];
|
|
88
|
+
b1[0x19] = MUL((b2[0x06] - b2[0x19]),COS_0_6);
|
|
89
|
+
|
|
90
|
+
b1[0x07] = b2[0x07] + b2[0x18];
|
|
91
|
+
b1[0x18] = MUL((b2[0x07] - b2[0x18]),COS_0_7);
|
|
92
|
+
|
|
93
|
+
b1[0x08] = b2[0x08] + b2[0x17];
|
|
94
|
+
b1[0x17] = MUL((b2[0x08] - b2[0x17]),COS_0_8);
|
|
95
|
+
|
|
96
|
+
b1[0x09] = b2[0x09] + b2[0x16];
|
|
97
|
+
b1[0x16] = MUL((b2[0x09] - b2[0x16]),COS_0_9);
|
|
98
|
+
|
|
99
|
+
b1[0x0A] = b2[0x0A] + b2[0x15];
|
|
100
|
+
b1[0x15] = MUL((b2[0x0A] - b2[0x15]),COS_0_10);
|
|
101
|
+
|
|
102
|
+
b1[0x0B] = b2[0x0B] + b2[0x14];
|
|
103
|
+
b1[0x14] = MUL((b2[0x0B] - b2[0x14]),COS_0_11);
|
|
104
|
+
|
|
105
|
+
b1[0x0C] = b2[0x0C] + b2[0x13];
|
|
106
|
+
b1[0x13] = MUL((b2[0x0C] - b2[0x13]),COS_0_12);
|
|
107
|
+
|
|
108
|
+
b1[0x0D] = b2[0x0D] + b2[0x12];
|
|
109
|
+
b1[0x12] = MULL((b2[0x0D] - b2[0x12]),COS_0_13);
|
|
110
|
+
|
|
111
|
+
b1[0x0E] = b2[0x0E] + b2[0x11];
|
|
112
|
+
b1[0x11] = MULL((b2[0x0E] - b2[0x11]),COS_0_14);
|
|
113
|
+
|
|
114
|
+
b1[0x0F] = b2[0x0F] + b2[0x10];
|
|
115
|
+
b1[0x10] = MULL((b2[0x0F] - b2[0x10]),COS_0_15);
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
b2[0x00] = b1[0x00] + b1[0x0F];
|
|
119
|
+
b2[0x0F] = MUL((b1[0x00] - b1[0x0F]),COS_1_0);
|
|
120
|
+
b2[0x01] = b1[0x01] + b1[0x0E];
|
|
121
|
+
b2[0x0E] = MUL((b1[0x01] - b1[0x0E]),COS_1_1);
|
|
122
|
+
b2[0x02] = b1[0x02] + b1[0x0D];
|
|
123
|
+
b2[0x0D] = MUL((b1[0x02] - b1[0x0D]),COS_1_2);
|
|
124
|
+
b2[0x03] = b1[0x03] + b1[0x0C];
|
|
125
|
+
b2[0x0C] = MUL((b1[0x03] - b1[0x0C]),COS_1_3);
|
|
126
|
+
b2[0x04] = b1[0x04] + b1[0x0B];
|
|
127
|
+
b2[0x0B] = MUL((b1[0x04] - b1[0x0B]),COS_1_4);
|
|
128
|
+
b2[0x05] = b1[0x05] + b1[0x0A];
|
|
129
|
+
b2[0x0A] = MUL((b1[0x05] - b1[0x0A]),COS_1_5);
|
|
130
|
+
b2[0x06] = b1[0x06] + b1[0x09];
|
|
131
|
+
b2[0x09] = MUL((b1[0x06] - b1[0x09]),COS_1_6);
|
|
132
|
+
b2[0x07] = b1[0x07] + b1[0x08];
|
|
133
|
+
b2[0x08] = MULL((b1[0x07] - b1[0x08]),COS_1_7);
|
|
134
|
+
|
|
135
|
+
b2[0x10] = b1[0x10] + b1[0x1F];
|
|
136
|
+
b2[0x1F] = MUL((b1[0x1F] - b1[0x10]),COS_1_0);
|
|
137
|
+
b2[0x11] = b1[0x11] + b1[0x1E];
|
|
138
|
+
b2[0x1E] = MUL((b1[0x1E] - b1[0x11]),COS_1_1);
|
|
139
|
+
b2[0x12] = b1[0x12] + b1[0x1D];
|
|
140
|
+
b2[0x1D] = MUL((b1[0x1D] - b1[0x12]),COS_1_2);
|
|
141
|
+
b2[0x13] = b1[0x13] + b1[0x1C];
|
|
142
|
+
b2[0x1C] = MUL((b1[0x1C] - b1[0x13]),COS_1_3);
|
|
143
|
+
b2[0x14] = b1[0x14] + b1[0x1B];
|
|
144
|
+
b2[0x1B] = MUL((b1[0x1B] - b1[0x14]),COS_1_4);
|
|
145
|
+
b2[0x15] = b1[0x15] + b1[0x1A];
|
|
146
|
+
b2[0x1A] = MUL((b1[0x1A] - b1[0x15]),COS_1_5);
|
|
147
|
+
b2[0x16] = b1[0x16] + b1[0x19];
|
|
148
|
+
b2[0x19] = MUL((b1[0x19] - b1[0x16]),COS_1_6);
|
|
149
|
+
b2[0x17] = b1[0x17] + b1[0x18];
|
|
150
|
+
b2[0x18] = MULL((b1[0x18] - b1[0x17]),COS_1_7);
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
b1[0x00] = b2[0x00] + b2[0x07];
|
|
154
|
+
b1[0x07] = MUL((b2[0x00] - b2[0x07]),COS_2_0);
|
|
155
|
+
b1[0x01] = b2[0x01] + b2[0x06];
|
|
156
|
+
b1[0x06] = MUL((b2[0x01] - b2[0x06]),COS_2_1);
|
|
157
|
+
b1[0x02] = b2[0x02] + b2[0x05];
|
|
158
|
+
b1[0x05] = MUL((b2[0x02] - b2[0x05]),COS_2_2);
|
|
159
|
+
b1[0x03] = b2[0x03] + b2[0x04];
|
|
160
|
+
b1[0x04] = MULL((b2[0x03] - b2[0x04]),COS_2_3);
|
|
161
|
+
|
|
162
|
+
b1[0x08] = b2[0x08] + b2[0x0F];
|
|
163
|
+
b1[0x0F] = MUL((b2[0x0F] - b2[0x08]),COS_2_0);
|
|
164
|
+
b1[0x09] = b2[0x09] + b2[0x0E];
|
|
165
|
+
b1[0x0E] = MUL((b2[0x0E] - b2[0x09]),COS_2_1);
|
|
166
|
+
b1[0x0A] = b2[0x0A] + b2[0x0D];
|
|
167
|
+
b1[0x0D] = MUL((b2[0x0D] - b2[0x0A]),COS_2_2);
|
|
168
|
+
b1[0x0B] = b2[0x0B] + b2[0x0C];
|
|
169
|
+
b1[0x0C] = MULL((b2[0x0C] - b2[0x0B]),COS_2_3);
|
|
170
|
+
|
|
171
|
+
b1[0x10] = b2[0x10] + b2[0x17];
|
|
172
|
+
b1[0x17] = MUL((b2[0x10] - b2[0x17]),COS_2_0);
|
|
173
|
+
b1[0x11] = b2[0x11] + b2[0x16];
|
|
174
|
+
b1[0x16] = MUL((b2[0x11] - b2[0x16]),COS_2_1);
|
|
175
|
+
b1[0x12] = b2[0x12] + b2[0x15];
|
|
176
|
+
b1[0x15] = MUL((b2[0x12] - b2[0x15]),COS_2_2);
|
|
177
|
+
b1[0x13] = b2[0x13] + b2[0x14];
|
|
178
|
+
b1[0x14] = MULL((b2[0x13] - b2[0x14]),COS_2_3);
|
|
179
|
+
|
|
180
|
+
b1[0x18] = b2[0x18] + b2[0x1F];
|
|
181
|
+
b1[0x1F] = MUL((b2[0x1F] - b2[0x18]),COS_2_0);
|
|
182
|
+
b1[0x19] = b2[0x19] + b2[0x1E];
|
|
183
|
+
b1[0x1E] = MUL((b2[0x1E] - b2[0x19]),COS_2_1);
|
|
184
|
+
b1[0x1A] = b2[0x1A] + b2[0x1D];
|
|
185
|
+
b1[0x1D] = MUL((b2[0x1D] - b2[0x1A]),COS_2_2);
|
|
186
|
+
b1[0x1B] = b2[0x1B] + b2[0x1C];
|
|
187
|
+
b1[0x1C] = MULL((b2[0x1C] - b2[0x1B]),COS_2_3);
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
b2[0x00] = b1[0x00] + b1[0x03];
|
|
191
|
+
b2[0x03] = MUL((b1[0x00] - b1[0x03]),COS_3_0);
|
|
192
|
+
b2[0x01] = b1[0x01] + b1[0x02];
|
|
193
|
+
b2[0x02] = MUL((b1[0x01] - b1[0x02]),COS_3_1);
|
|
194
|
+
|
|
195
|
+
b2[0x04] = b1[0x04] + b1[0x07];
|
|
196
|
+
b2[0x07] = MUL((b1[0x07] - b1[0x04]),COS_3_0);
|
|
197
|
+
b2[0x05] = b1[0x05] + b1[0x06];
|
|
198
|
+
b2[0x06] = MUL((b1[0x06] - b1[0x05]),COS_3_1);
|
|
199
|
+
|
|
200
|
+
b2[0x08] = b1[0x08] + b1[0x0B];
|
|
201
|
+
b2[0x0B] = MUL((b1[0x08] - b1[0x0B]),COS_3_0);
|
|
202
|
+
b2[0x09] = b1[0x09] + b1[0x0A];
|
|
203
|
+
b2[0x0A] = MUL((b1[0x09] - b1[0x0A]),COS_3_1);
|
|
204
|
+
|
|
205
|
+
b2[0x0C] = b1[0x0C] + b1[0x0F];
|
|
206
|
+
b2[0x0F] = MUL((b1[0x0F] - b1[0x0C]),COS_3_0);
|
|
207
|
+
b2[0x0D] = b1[0x0D] + b1[0x0E];
|
|
208
|
+
b2[0x0E] = MUL((b1[0x0E] - b1[0x0D]),COS_3_1);
|
|
209
|
+
|
|
210
|
+
b2[0x10] = b1[0x10] + b1[0x13];
|
|
211
|
+
b2[0x13] = MUL((b1[0x10] - b1[0x13]),COS_3_0);
|
|
212
|
+
b2[0x11] = b1[0x11] + b1[0x12];
|
|
213
|
+
b2[0x12] = MUL((b1[0x11] - b1[0x12]),COS_3_1);
|
|
214
|
+
|
|
215
|
+
b2[0x14] = b1[0x14] + b1[0x17];
|
|
216
|
+
b2[0x17] = MUL((b1[0x17] - b1[0x14]),COS_3_0);
|
|
217
|
+
b2[0x15] = b1[0x15] + b1[0x16];
|
|
218
|
+
b2[0x16] = MUL((b1[0x16] - b1[0x15]),COS_3_1);
|
|
219
|
+
|
|
220
|
+
b2[0x18] = b1[0x18] + b1[0x1B];
|
|
221
|
+
b2[0x1B] = MUL((b1[0x18] - b1[0x1B]),COS_3_0);
|
|
222
|
+
b2[0x19] = b1[0x19] + b1[0x1A];
|
|
223
|
+
b2[0x1A] = MUL((b1[0x19] - b1[0x1A]),COS_3_1);
|
|
224
|
+
|
|
225
|
+
b2[0x1C] = b1[0x1C] + b1[0x1F];
|
|
226
|
+
b2[0x1F] = MUL((b1[0x1F] - b1[0x1C]),COS_3_0);
|
|
227
|
+
b2[0x1D] = b1[0x1D] + b1[0x1E];
|
|
228
|
+
b2[0x1E] = MUL((b1[0x1E] - b1[0x1D]),COS_3_1);
|
|
229
|
+
|
|
230
|
+
{
|
|
231
|
+
int i;
|
|
232
|
+
for(i=0;i<32;i+=4) {
|
|
233
|
+
b1[i+0x00] = b2[i+0x00] + b2[i+0x01];
|
|
234
|
+
b1[i+0x01] = MUL((b2[i+0x00] - b2[i+0x01]),COS_4_0);
|
|
235
|
+
b1[i+0x02] = b2[i+0x02] + b2[i+0x03];
|
|
236
|
+
b1[i+0x03] = MUL((b2[i+0x03] - b2[i+0x02]),COS_4_0);
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
b1[0x02] += b1[0x03];
|
|
241
|
+
b1[0x06] += b1[0x07];
|
|
242
|
+
b1[0x04] += b1[0x06];
|
|
243
|
+
b1[0x06] += b1[0x05];
|
|
244
|
+
b1[0x05] += b1[0x07];
|
|
245
|
+
|
|
246
|
+
b1[0x0A] += b1[0x0B];
|
|
247
|
+
b1[0x0E] += b1[0x0F];
|
|
248
|
+
b1[0x0C] += b1[0x0E];
|
|
249
|
+
b1[0x0E] += b1[0x0D];
|
|
250
|
+
b1[0x0D] += b1[0x0F];
|
|
251
|
+
|
|
252
|
+
b1[0x12] += b1[0x13];
|
|
253
|
+
b1[0x16] += b1[0x17];
|
|
254
|
+
b1[0x14] += b1[0x16];
|
|
255
|
+
b1[0x16] += b1[0x15];
|
|
256
|
+
b1[0x15] += b1[0x17];
|
|
257
|
+
|
|
258
|
+
b1[0x1A] += b1[0x1B];
|
|
259
|
+
b1[0x1E] += b1[0x1F];
|
|
260
|
+
b1[0x1C] += b1[0x1E];
|
|
261
|
+
b1[0x1E] += b1[0x1D];
|
|
262
|
+
b1[0x1D] += b1[0x1F];
|
|
263
|
+
|
|
264
|
+
SETOUT(out0,16,b1[0x00]);
|
|
265
|
+
SETOUT(out0,12,b1[0x04]);
|
|
266
|
+
SETOUT(out0, 8,b1[0x02]);
|
|
267
|
+
SETOUT(out0, 4,b1[0x06]);
|
|
268
|
+
SETOUT(out0, 0,b1[0x01]);
|
|
269
|
+
SETOUT(out1, 0,b1[0x01]);
|
|
270
|
+
SETOUT(out1, 4,b1[0x05]);
|
|
271
|
+
SETOUT(out1, 8,b1[0x03]);
|
|
272
|
+
SETOUT(out1,12,b1[0x07]);
|
|
273
|
+
|
|
274
|
+
b1[0x08] += b1[0x0C];
|
|
275
|
+
SETOUT(out0,14,b1[0x08]);
|
|
276
|
+
b1[0x0C] += b1[0x0a];
|
|
277
|
+
SETOUT(out0,10,b1[0x0C]);
|
|
278
|
+
b1[0x0A] += b1[0x0E];
|
|
279
|
+
SETOUT(out0, 6,b1[0x0A]);
|
|
280
|
+
b1[0x0E] += b1[0x09];
|
|
281
|
+
SETOUT(out0, 2,b1[0x0E]);
|
|
282
|
+
b1[0x09] += b1[0x0D];
|
|
283
|
+
SETOUT(out1, 2,b1[0x09]);
|
|
284
|
+
b1[0x0D] += b1[0x0B];
|
|
285
|
+
SETOUT(out1, 6,b1[0x0D]);
|
|
286
|
+
b1[0x0B] += b1[0x0F];
|
|
287
|
+
SETOUT(out1,10,b1[0x0B]);
|
|
288
|
+
SETOUT(out1,14,b1[0x0F]);
|
|
289
|
+
|
|
290
|
+
b1[0x18] += b1[0x1C];
|
|
291
|
+
SETOUT(out0,15,b1[0x10] + b1[0x18]);
|
|
292
|
+
SETOUT(out0,13,b1[0x18] + b1[0x14]);
|
|
293
|
+
b1[0x1C] += b1[0x1a];
|
|
294
|
+
SETOUT(out0,11,b1[0x14] + b1[0x1C]);
|
|
295
|
+
SETOUT(out0, 9,b1[0x1C] + b1[0x12]);
|
|
296
|
+
b1[0x1A] += b1[0x1E];
|
|
297
|
+
SETOUT(out0, 7,b1[0x12] + b1[0x1A]);
|
|
298
|
+
SETOUT(out0, 5,b1[0x1A] + b1[0x16]);
|
|
299
|
+
b1[0x1E] += b1[0x19];
|
|
300
|
+
SETOUT(out0, 3,b1[0x16] + b1[0x1E]);
|
|
301
|
+
SETOUT(out0, 1,b1[0x1E] + b1[0x11]);
|
|
302
|
+
b1[0x19] += b1[0x1D];
|
|
303
|
+
SETOUT(out1, 1,b1[0x11] + b1[0x19]);
|
|
304
|
+
SETOUT(out1, 3,b1[0x19] + b1[0x15]);
|
|
305
|
+
b1[0x1D] += b1[0x1B];
|
|
306
|
+
SETOUT(out1, 5,b1[0x15] + b1[0x1D]);
|
|
307
|
+
SETOUT(out1, 7,b1[0x1D] + b1[0x13]);
|
|
308
|
+
b1[0x1B] += b1[0x1F];
|
|
309
|
+
SETOUT(out1, 9,b1[0x13] + b1[0x1B]);
|
|
310
|
+
SETOUT(out1,11,b1[0x1B] + b1[0x17]);
|
|
311
|
+
SETOUT(out1,13,b1[0x17] + b1[0x1F]);
|
|
312
|
+
SETOUT(out1,15,b1[0x1F]);
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
|
|
316
|
+
/*
|
|
317
|
+
* the call via dct64 is a trick to force GCC to use
|
|
318
|
+
* (new) registers for the b1,b2 pointer to the bufs[xx] field
|
|
319
|
+
*/
|
|
320
|
+
void dct64_i486(int *a,int *b,real *samples)
|
|
321
|
+
{
|
|
322
|
+
int bufs[64];
|
|
323
|
+
int i;
|
|
324
|
+
|
|
325
|
+
#ifdef REAL_IS_FIXED
|
|
326
|
+
#define TOINT(a) ((a) * 32768 / (int)REAL_FACTOR)
|
|
327
|
+
|
|
328
|
+
for(i=0;i<32;i++) {
|
|
329
|
+
bufs[i]=TOINT(samples[i]);
|
|
330
|
+
}
|
|
331
|
+
#else
|
|
332
|
+
int *p = bufs;
|
|
333
|
+
register double const scale = ((65536.0 * 32) + 1) * 65536.0;
|
|
334
|
+
|
|
335
|
+
for(i=0;i<32;i++) {
|
|
336
|
+
*((double *) (p++)) = scale + *samples++; /* beware on bufs overrun: 8B store from x87 */
|
|
337
|
+
}
|
|
338
|
+
#endif
|
|
339
|
+
|
|
340
|
+
dct64_1_486(a,b,bufs+32,bufs);
|
|
341
|
+
}
|
|
342
|
+
|
|
@@ -0,0 +1,811 @@
|
|
|
1
|
+
/*
|
|
2
|
+
dct64_mmx.s: MMX optimized DCT64
|
|
3
|
+
|
|
4
|
+
copyright ?-2006 by the mpg123 project - free software under the terms of the LGPL 2.1
|
|
5
|
+
see COPYING and AUTHORS files in distribution or http://mpg123.org
|
|
6
|
+
initially written by the mysterious higway (apparently)
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
#include "mangle.h"
|
|
10
|
+
|
|
11
|
+
.text
|
|
12
|
+
|
|
13
|
+
ALIGN32
|
|
14
|
+
.globl ASM_NAME(dct64_mmx)
|
|
15
|
+
ASM_NAME(dct64_mmx):
|
|
16
|
+
|
|
17
|
+
xorl %ecx,%ecx
|
|
18
|
+
.globl ASM_NAME(dct64_MMX)
|
|
19
|
+
ASM_NAME(dct64_MMX):
|
|
20
|
+
pushl %ebx
|
|
21
|
+
pushl %esi
|
|
22
|
+
pushl %edi
|
|
23
|
+
subl $256,%esp
|
|
24
|
+
movl 280(%esp),%eax
|
|
25
|
+
flds (%eax)
|
|
26
|
+
leal 128(%esp),%edx
|
|
27
|
+
fadds 124(%eax)
|
|
28
|
+
movl 272(%esp),%esi
|
|
29
|
+
fstps (%edx)
|
|
30
|
+
movl 276(%esp),%edi
|
|
31
|
+
flds 4(%eax)
|
|
32
|
+
movl ASM_VALUE(costab_mmxsse),%ebx
|
|
33
|
+
fadds 120(%eax)
|
|
34
|
+
orl %ecx,%ecx
|
|
35
|
+
fstps 4(%edx)
|
|
36
|
+
flds (%eax)
|
|
37
|
+
movl %esp,%ecx
|
|
38
|
+
fsubs 124(%eax)
|
|
39
|
+
fmuls (%ebx)
|
|
40
|
+
fstps 124(%edx)
|
|
41
|
+
flds 4(%eax)
|
|
42
|
+
fsubs 120(%eax)
|
|
43
|
+
fmuls 4(%ebx)
|
|
44
|
+
fstps 120(%edx)
|
|
45
|
+
flds 8(%eax)
|
|
46
|
+
fadds 116(%eax)
|
|
47
|
+
fstps 8(%edx)
|
|
48
|
+
flds 12(%eax)
|
|
49
|
+
fadds 112(%eax)
|
|
50
|
+
fstps 12(%edx)
|
|
51
|
+
flds 8(%eax)
|
|
52
|
+
fsubs 116(%eax)
|
|
53
|
+
fmuls 8(%ebx)
|
|
54
|
+
fstps 116(%edx)
|
|
55
|
+
flds 12(%eax)
|
|
56
|
+
fsubs 112(%eax)
|
|
57
|
+
fmuls 12(%ebx)
|
|
58
|
+
fstps 112(%edx)
|
|
59
|
+
flds 16(%eax)
|
|
60
|
+
fadds 108(%eax)
|
|
61
|
+
fstps 16(%edx)
|
|
62
|
+
flds 20(%eax)
|
|
63
|
+
fadds 104(%eax)
|
|
64
|
+
fstps 20(%edx)
|
|
65
|
+
flds 16(%eax)
|
|
66
|
+
fsubs 108(%eax)
|
|
67
|
+
fmuls 16(%ebx)
|
|
68
|
+
fstps 108(%edx)
|
|
69
|
+
flds 20(%eax)
|
|
70
|
+
fsubs 104(%eax)
|
|
71
|
+
fmuls 20(%ebx)
|
|
72
|
+
fstps 104(%edx)
|
|
73
|
+
flds 24(%eax)
|
|
74
|
+
fadds 100(%eax)
|
|
75
|
+
fstps 24(%edx)
|
|
76
|
+
flds 28(%eax)
|
|
77
|
+
fadds 96(%eax)
|
|
78
|
+
fstps 28(%edx)
|
|
79
|
+
flds 24(%eax)
|
|
80
|
+
fsubs 100(%eax)
|
|
81
|
+
fmuls 24(%ebx)
|
|
82
|
+
fstps 100(%edx)
|
|
83
|
+
flds 28(%eax)
|
|
84
|
+
fsubs 96(%eax)
|
|
85
|
+
fmuls 28(%ebx)
|
|
86
|
+
fstps 96(%edx)
|
|
87
|
+
flds 32(%eax)
|
|
88
|
+
fadds 92(%eax)
|
|
89
|
+
fstps 32(%edx)
|
|
90
|
+
flds 36(%eax)
|
|
91
|
+
fadds 88(%eax)
|
|
92
|
+
fstps 36(%edx)
|
|
93
|
+
flds 32(%eax)
|
|
94
|
+
fsubs 92(%eax)
|
|
95
|
+
fmuls 32(%ebx)
|
|
96
|
+
fstps 92(%edx)
|
|
97
|
+
flds 36(%eax)
|
|
98
|
+
fsubs 88(%eax)
|
|
99
|
+
fmuls 36(%ebx)
|
|
100
|
+
fstps 88(%edx)
|
|
101
|
+
flds 40(%eax)
|
|
102
|
+
fadds 84(%eax)
|
|
103
|
+
fstps 40(%edx)
|
|
104
|
+
flds 44(%eax)
|
|
105
|
+
fadds 80(%eax)
|
|
106
|
+
fstps 44(%edx)
|
|
107
|
+
flds 40(%eax)
|
|
108
|
+
fsubs 84(%eax)
|
|
109
|
+
fmuls 40(%ebx)
|
|
110
|
+
fstps 84(%edx)
|
|
111
|
+
flds 44(%eax)
|
|
112
|
+
fsubs 80(%eax)
|
|
113
|
+
fmuls 44(%ebx)
|
|
114
|
+
fstps 80(%edx)
|
|
115
|
+
flds 48(%eax)
|
|
116
|
+
fadds 76(%eax)
|
|
117
|
+
fstps 48(%edx)
|
|
118
|
+
flds 52(%eax)
|
|
119
|
+
fadds 72(%eax)
|
|
120
|
+
fstps 52(%edx)
|
|
121
|
+
flds 48(%eax)
|
|
122
|
+
fsubs 76(%eax)
|
|
123
|
+
fmuls 48(%ebx)
|
|
124
|
+
fstps 76(%edx)
|
|
125
|
+
flds 52(%eax)
|
|
126
|
+
fsubs 72(%eax)
|
|
127
|
+
fmuls 52(%ebx)
|
|
128
|
+
fstps 72(%edx)
|
|
129
|
+
flds 56(%eax)
|
|
130
|
+
fadds 68(%eax)
|
|
131
|
+
fstps 56(%edx)
|
|
132
|
+
flds 60(%eax)
|
|
133
|
+
fadds 64(%eax)
|
|
134
|
+
fstps 60(%edx)
|
|
135
|
+
flds 56(%eax)
|
|
136
|
+
fsubs 68(%eax)
|
|
137
|
+
fmuls 56(%ebx)
|
|
138
|
+
fstps 68(%edx)
|
|
139
|
+
flds 60(%eax)
|
|
140
|
+
fsubs 64(%eax)
|
|
141
|
+
fmuls 60(%ebx)
|
|
142
|
+
fstps 64(%edx)
|
|
143
|
+
|
|
144
|
+
flds (%edx)
|
|
145
|
+
fadds 60(%edx)
|
|
146
|
+
fstps (%ecx)
|
|
147
|
+
flds 4(%edx)
|
|
148
|
+
fadds 56(%edx)
|
|
149
|
+
fstps 4(%ecx)
|
|
150
|
+
flds (%edx)
|
|
151
|
+
fsubs 60(%edx)
|
|
152
|
+
fmuls 64(%ebx)
|
|
153
|
+
fstps 60(%ecx)
|
|
154
|
+
flds 4(%edx)
|
|
155
|
+
fsubs 56(%edx)
|
|
156
|
+
fmuls 68(%ebx)
|
|
157
|
+
fstps 56(%ecx)
|
|
158
|
+
flds 8(%edx)
|
|
159
|
+
fadds 52(%edx)
|
|
160
|
+
fstps 8(%ecx)
|
|
161
|
+
flds 12(%edx)
|
|
162
|
+
fadds 48(%edx)
|
|
163
|
+
fstps 12(%ecx)
|
|
164
|
+
flds 8(%edx)
|
|
165
|
+
fsubs 52(%edx)
|
|
166
|
+
fmuls 72(%ebx)
|
|
167
|
+
fstps 52(%ecx)
|
|
168
|
+
flds 12(%edx)
|
|
169
|
+
fsubs 48(%edx)
|
|
170
|
+
fmuls 76(%ebx)
|
|
171
|
+
fstps 48(%ecx)
|
|
172
|
+
flds 16(%edx)
|
|
173
|
+
fadds 44(%edx)
|
|
174
|
+
fstps 16(%ecx)
|
|
175
|
+
flds 20(%edx)
|
|
176
|
+
fadds 40(%edx)
|
|
177
|
+
fstps 20(%ecx)
|
|
178
|
+
flds 16(%edx)
|
|
179
|
+
fsubs 44(%edx)
|
|
180
|
+
fmuls 80(%ebx)
|
|
181
|
+
fstps 44(%ecx)
|
|
182
|
+
flds 20(%edx)
|
|
183
|
+
fsubs 40(%edx)
|
|
184
|
+
fmuls 84(%ebx)
|
|
185
|
+
fstps 40(%ecx)
|
|
186
|
+
flds 24(%edx)
|
|
187
|
+
fadds 36(%edx)
|
|
188
|
+
fstps 24(%ecx)
|
|
189
|
+
flds 28(%edx)
|
|
190
|
+
fadds 32(%edx)
|
|
191
|
+
fstps 28(%ecx)
|
|
192
|
+
flds 24(%edx)
|
|
193
|
+
fsubs 36(%edx)
|
|
194
|
+
fmuls 88(%ebx)
|
|
195
|
+
fstps 36(%ecx)
|
|
196
|
+
flds 28(%edx)
|
|
197
|
+
fsubs 32(%edx)
|
|
198
|
+
fmuls 92(%ebx)
|
|
199
|
+
fstps 32(%ecx)
|
|
200
|
+
|
|
201
|
+
flds 64(%edx)
|
|
202
|
+
fadds 124(%edx)
|
|
203
|
+
fstps 64(%ecx)
|
|
204
|
+
flds 68(%edx)
|
|
205
|
+
fadds 120(%edx)
|
|
206
|
+
fstps 68(%ecx)
|
|
207
|
+
flds 124(%edx)
|
|
208
|
+
fsubs 64(%edx)
|
|
209
|
+
fmuls 64(%ebx)
|
|
210
|
+
fstps 124(%ecx)
|
|
211
|
+
flds 120(%edx)
|
|
212
|
+
fsubs 68(%edx)
|
|
213
|
+
fmuls 68(%ebx)
|
|
214
|
+
fstps 120(%ecx)
|
|
215
|
+
flds 72(%edx)
|
|
216
|
+
fadds 116(%edx)
|
|
217
|
+
fstps 72(%ecx)
|
|
218
|
+
flds 76(%edx)
|
|
219
|
+
fadds 112(%edx)
|
|
220
|
+
fstps 76(%ecx)
|
|
221
|
+
flds 116(%edx)
|
|
222
|
+
fsubs 72(%edx)
|
|
223
|
+
fmuls 72(%ebx)
|
|
224
|
+
fstps 116(%ecx)
|
|
225
|
+
flds 112(%edx)
|
|
226
|
+
fsubs 76(%edx)
|
|
227
|
+
fmuls 76(%ebx)
|
|
228
|
+
fstps 112(%ecx)
|
|
229
|
+
flds 80(%edx)
|
|
230
|
+
fadds 108(%edx)
|
|
231
|
+
fstps 80(%ecx)
|
|
232
|
+
flds 84(%edx)
|
|
233
|
+
fadds 104(%edx)
|
|
234
|
+
fstps 84(%ecx)
|
|
235
|
+
flds 108(%edx)
|
|
236
|
+
fsubs 80(%edx)
|
|
237
|
+
fmuls 80(%ebx)
|
|
238
|
+
fstps 108(%ecx)
|
|
239
|
+
flds 104(%edx)
|
|
240
|
+
fsubs 84(%edx)
|
|
241
|
+
fmuls 84(%ebx)
|
|
242
|
+
fstps 104(%ecx)
|
|
243
|
+
flds 88(%edx)
|
|
244
|
+
fadds 100(%edx)
|
|
245
|
+
fstps 88(%ecx)
|
|
246
|
+
flds 92(%edx)
|
|
247
|
+
fadds 96(%edx)
|
|
248
|
+
fstps 92(%ecx)
|
|
249
|
+
flds 100(%edx)
|
|
250
|
+
fsubs 88(%edx)
|
|
251
|
+
fmuls 88(%ebx)
|
|
252
|
+
fstps 100(%ecx)
|
|
253
|
+
flds 96(%edx)
|
|
254
|
+
fsubs 92(%edx)
|
|
255
|
+
fmuls 92(%ebx)
|
|
256
|
+
fstps 96(%ecx)
|
|
257
|
+
|
|
258
|
+
flds (%ecx)
|
|
259
|
+
fadds 28(%ecx)
|
|
260
|
+
fstps (%edx)
|
|
261
|
+
flds (%ecx)
|
|
262
|
+
fsubs 28(%ecx)
|
|
263
|
+
fmuls 96(%ebx)
|
|
264
|
+
fstps 28(%edx)
|
|
265
|
+
flds 4(%ecx)
|
|
266
|
+
fadds 24(%ecx)
|
|
267
|
+
fstps 4(%edx)
|
|
268
|
+
flds 4(%ecx)
|
|
269
|
+
fsubs 24(%ecx)
|
|
270
|
+
fmuls 100(%ebx)
|
|
271
|
+
fstps 24(%edx)
|
|
272
|
+
flds 8(%ecx)
|
|
273
|
+
fadds 20(%ecx)
|
|
274
|
+
fstps 8(%edx)
|
|
275
|
+
flds 8(%ecx)
|
|
276
|
+
fsubs 20(%ecx)
|
|
277
|
+
fmuls 104(%ebx)
|
|
278
|
+
fstps 20(%edx)
|
|
279
|
+
flds 12(%ecx)
|
|
280
|
+
fadds 16(%ecx)
|
|
281
|
+
fstps 12(%edx)
|
|
282
|
+
flds 12(%ecx)
|
|
283
|
+
fsubs 16(%ecx)
|
|
284
|
+
fmuls 108(%ebx)
|
|
285
|
+
fstps 16(%edx)
|
|
286
|
+
flds 32(%ecx)
|
|
287
|
+
fadds 60(%ecx)
|
|
288
|
+
fstps 32(%edx)
|
|
289
|
+
flds 60(%ecx)
|
|
290
|
+
fsubs 32(%ecx)
|
|
291
|
+
fmuls 96(%ebx)
|
|
292
|
+
fstps 60(%edx)
|
|
293
|
+
flds 36(%ecx)
|
|
294
|
+
fadds 56(%ecx)
|
|
295
|
+
fstps 36(%edx)
|
|
296
|
+
flds 56(%ecx)
|
|
297
|
+
fsubs 36(%ecx)
|
|
298
|
+
fmuls 100(%ebx)
|
|
299
|
+
fstps 56(%edx)
|
|
300
|
+
flds 40(%ecx)
|
|
301
|
+
fadds 52(%ecx)
|
|
302
|
+
fstps 40(%edx)
|
|
303
|
+
flds 52(%ecx)
|
|
304
|
+
fsubs 40(%ecx)
|
|
305
|
+
fmuls 104(%ebx)
|
|
306
|
+
fstps 52(%edx)
|
|
307
|
+
flds 44(%ecx)
|
|
308
|
+
fadds 48(%ecx)
|
|
309
|
+
fstps 44(%edx)
|
|
310
|
+
flds 48(%ecx)
|
|
311
|
+
fsubs 44(%ecx)
|
|
312
|
+
fmuls 108(%ebx)
|
|
313
|
+
fstps 48(%edx)
|
|
314
|
+
flds 64(%ecx)
|
|
315
|
+
fadds 92(%ecx)
|
|
316
|
+
fstps 64(%edx)
|
|
317
|
+
flds 64(%ecx)
|
|
318
|
+
fsubs 92(%ecx)
|
|
319
|
+
fmuls 96(%ebx)
|
|
320
|
+
fstps 92(%edx)
|
|
321
|
+
flds 68(%ecx)
|
|
322
|
+
fadds 88(%ecx)
|
|
323
|
+
fstps 68(%edx)
|
|
324
|
+
flds 68(%ecx)
|
|
325
|
+
fsubs 88(%ecx)
|
|
326
|
+
fmuls 100(%ebx)
|
|
327
|
+
fstps 88(%edx)
|
|
328
|
+
flds 72(%ecx)
|
|
329
|
+
fadds 84(%ecx)
|
|
330
|
+
fstps 72(%edx)
|
|
331
|
+
flds 72(%ecx)
|
|
332
|
+
fsubs 84(%ecx)
|
|
333
|
+
fmuls 104(%ebx)
|
|
334
|
+
fstps 84(%edx)
|
|
335
|
+
flds 76(%ecx)
|
|
336
|
+
fadds 80(%ecx)
|
|
337
|
+
fstps 76(%edx)
|
|
338
|
+
flds 76(%ecx)
|
|
339
|
+
fsubs 80(%ecx)
|
|
340
|
+
fmuls 108(%ebx)
|
|
341
|
+
fstps 80(%edx)
|
|
342
|
+
flds 96(%ecx)
|
|
343
|
+
fadds 124(%ecx)
|
|
344
|
+
fstps 96(%edx)
|
|
345
|
+
flds 124(%ecx)
|
|
346
|
+
fsubs 96(%ecx)
|
|
347
|
+
fmuls 96(%ebx)
|
|
348
|
+
fstps 124(%edx)
|
|
349
|
+
flds 100(%ecx)
|
|
350
|
+
fadds 120(%ecx)
|
|
351
|
+
fstps 100(%edx)
|
|
352
|
+
flds 120(%ecx)
|
|
353
|
+
fsubs 100(%ecx)
|
|
354
|
+
fmuls 100(%ebx)
|
|
355
|
+
fstps 120(%edx)
|
|
356
|
+
flds 104(%ecx)
|
|
357
|
+
fadds 116(%ecx)
|
|
358
|
+
fstps 104(%edx)
|
|
359
|
+
flds 116(%ecx)
|
|
360
|
+
fsubs 104(%ecx)
|
|
361
|
+
fmuls 104(%ebx)
|
|
362
|
+
fstps 116(%edx)
|
|
363
|
+
flds 108(%ecx)
|
|
364
|
+
fadds 112(%ecx)
|
|
365
|
+
fstps 108(%edx)
|
|
366
|
+
flds 112(%ecx)
|
|
367
|
+
fsubs 108(%ecx)
|
|
368
|
+
fmuls 108(%ebx)
|
|
369
|
+
fstps 112(%edx)
|
|
370
|
+
flds (%edx)
|
|
371
|
+
fadds 12(%edx)
|
|
372
|
+
fstps (%ecx)
|
|
373
|
+
flds (%edx)
|
|
374
|
+
fsubs 12(%edx)
|
|
375
|
+
fmuls 112(%ebx)
|
|
376
|
+
fstps 12(%ecx)
|
|
377
|
+
flds 4(%edx)
|
|
378
|
+
fadds 8(%edx)
|
|
379
|
+
fstps 4(%ecx)
|
|
380
|
+
flds 4(%edx)
|
|
381
|
+
fsubs 8(%edx)
|
|
382
|
+
fmuls 116(%ebx)
|
|
383
|
+
fstps 8(%ecx)
|
|
384
|
+
flds 16(%edx)
|
|
385
|
+
fadds 28(%edx)
|
|
386
|
+
fstps 16(%ecx)
|
|
387
|
+
flds 28(%edx)
|
|
388
|
+
fsubs 16(%edx)
|
|
389
|
+
fmuls 112(%ebx)
|
|
390
|
+
fstps 28(%ecx)
|
|
391
|
+
flds 20(%edx)
|
|
392
|
+
fadds 24(%edx)
|
|
393
|
+
fstps 20(%ecx)
|
|
394
|
+
flds 24(%edx)
|
|
395
|
+
fsubs 20(%edx)
|
|
396
|
+
fmuls 116(%ebx)
|
|
397
|
+
fstps 24(%ecx)
|
|
398
|
+
flds 32(%edx)
|
|
399
|
+
fadds 44(%edx)
|
|
400
|
+
fstps 32(%ecx)
|
|
401
|
+
flds 32(%edx)
|
|
402
|
+
fsubs 44(%edx)
|
|
403
|
+
fmuls 112(%ebx)
|
|
404
|
+
fstps 44(%ecx)
|
|
405
|
+
flds 36(%edx)
|
|
406
|
+
fadds 40(%edx)
|
|
407
|
+
fstps 36(%ecx)
|
|
408
|
+
flds 36(%edx)
|
|
409
|
+
fsubs 40(%edx)
|
|
410
|
+
fmuls 116(%ebx)
|
|
411
|
+
fstps 40(%ecx)
|
|
412
|
+
flds 48(%edx)
|
|
413
|
+
fadds 60(%edx)
|
|
414
|
+
fstps 48(%ecx)
|
|
415
|
+
flds 60(%edx)
|
|
416
|
+
fsubs 48(%edx)
|
|
417
|
+
fmuls 112(%ebx)
|
|
418
|
+
fstps 60(%ecx)
|
|
419
|
+
flds 52(%edx)
|
|
420
|
+
fadds 56(%edx)
|
|
421
|
+
fstps 52(%ecx)
|
|
422
|
+
flds 56(%edx)
|
|
423
|
+
fsubs 52(%edx)
|
|
424
|
+
fmuls 116(%ebx)
|
|
425
|
+
fstps 56(%ecx)
|
|
426
|
+
flds 64(%edx)
|
|
427
|
+
fadds 76(%edx)
|
|
428
|
+
fstps 64(%ecx)
|
|
429
|
+
flds 64(%edx)
|
|
430
|
+
fsubs 76(%edx)
|
|
431
|
+
fmuls 112(%ebx)
|
|
432
|
+
fstps 76(%ecx)
|
|
433
|
+
flds 68(%edx)
|
|
434
|
+
fadds 72(%edx)
|
|
435
|
+
fstps 68(%ecx)
|
|
436
|
+
flds 68(%edx)
|
|
437
|
+
fsubs 72(%edx)
|
|
438
|
+
fmuls 116(%ebx)
|
|
439
|
+
fstps 72(%ecx)
|
|
440
|
+
flds 80(%edx)
|
|
441
|
+
fadds 92(%edx)
|
|
442
|
+
fstps 80(%ecx)
|
|
443
|
+
flds 92(%edx)
|
|
444
|
+
fsubs 80(%edx)
|
|
445
|
+
fmuls 112(%ebx)
|
|
446
|
+
fstps 92(%ecx)
|
|
447
|
+
flds 84(%edx)
|
|
448
|
+
fadds 88(%edx)
|
|
449
|
+
fstps 84(%ecx)
|
|
450
|
+
flds 88(%edx)
|
|
451
|
+
fsubs 84(%edx)
|
|
452
|
+
fmuls 116(%ebx)
|
|
453
|
+
fstps 88(%ecx)
|
|
454
|
+
flds 96(%edx)
|
|
455
|
+
fadds 108(%edx)
|
|
456
|
+
fstps 96(%ecx)
|
|
457
|
+
flds 96(%edx)
|
|
458
|
+
fsubs 108(%edx)
|
|
459
|
+
fmuls 112(%ebx)
|
|
460
|
+
fstps 108(%ecx)
|
|
461
|
+
flds 100(%edx)
|
|
462
|
+
fadds 104(%edx)
|
|
463
|
+
fstps 100(%ecx)
|
|
464
|
+
flds 100(%edx)
|
|
465
|
+
fsubs 104(%edx)
|
|
466
|
+
fmuls 116(%ebx)
|
|
467
|
+
fstps 104(%ecx)
|
|
468
|
+
flds 112(%edx)
|
|
469
|
+
fadds 124(%edx)
|
|
470
|
+
fstps 112(%ecx)
|
|
471
|
+
flds 124(%edx)
|
|
472
|
+
fsubs 112(%edx)
|
|
473
|
+
fmuls 112(%ebx)
|
|
474
|
+
fstps 124(%ecx)
|
|
475
|
+
flds 116(%edx)
|
|
476
|
+
fadds 120(%edx)
|
|
477
|
+
fstps 116(%ecx)
|
|
478
|
+
flds 120(%edx)
|
|
479
|
+
fsubs 116(%edx)
|
|
480
|
+
fmuls 116(%ebx)
|
|
481
|
+
fstps 120(%ecx)
|
|
482
|
+
|
|
483
|
+
flds 32(%ecx)
|
|
484
|
+
fadds 36(%ecx)
|
|
485
|
+
fstps 32(%edx)
|
|
486
|
+
flds 32(%ecx)
|
|
487
|
+
fsubs 36(%ecx)
|
|
488
|
+
fmuls 120(%ebx)
|
|
489
|
+
fstps 36(%edx)
|
|
490
|
+
flds 44(%ecx)
|
|
491
|
+
fsubs 40(%ecx)
|
|
492
|
+
fmuls 120(%ebx)
|
|
493
|
+
fsts 44(%edx)
|
|
494
|
+
fadds 40(%ecx)
|
|
495
|
+
fadds 44(%ecx)
|
|
496
|
+
fstps 40(%edx)
|
|
497
|
+
flds 48(%ecx)
|
|
498
|
+
fsubs 52(%ecx)
|
|
499
|
+
fmuls 120(%ebx)
|
|
500
|
+
flds 60(%ecx)
|
|
501
|
+
fsubs 56(%ecx)
|
|
502
|
+
fmuls 120(%ebx)
|
|
503
|
+
fld %st(0)
|
|
504
|
+
fadds 56(%ecx)
|
|
505
|
+
fadds 60(%ecx)
|
|
506
|
+
fld %st(0)
|
|
507
|
+
fadds 48(%ecx)
|
|
508
|
+
fadds 52(%ecx)
|
|
509
|
+
fstps 48(%edx)
|
|
510
|
+
fadd %st(2)
|
|
511
|
+
fstps 56(%edx)
|
|
512
|
+
fsts 60(%edx)
|
|
513
|
+
faddp %st(1)
|
|
514
|
+
fstps 52(%edx)
|
|
515
|
+
flds 64(%ecx)
|
|
516
|
+
fadds 68(%ecx)
|
|
517
|
+
fstps 64(%edx)
|
|
518
|
+
flds 64(%ecx)
|
|
519
|
+
fsubs 68(%ecx)
|
|
520
|
+
fmuls 120(%ebx)
|
|
521
|
+
fstps 68(%edx)
|
|
522
|
+
flds 76(%ecx)
|
|
523
|
+
fsubs 72(%ecx)
|
|
524
|
+
fmuls 120(%ebx)
|
|
525
|
+
fsts 76(%edx)
|
|
526
|
+
fadds 72(%ecx)
|
|
527
|
+
fadds 76(%ecx)
|
|
528
|
+
fstps 72(%edx)
|
|
529
|
+
flds 92(%ecx)
|
|
530
|
+
fsubs 88(%ecx)
|
|
531
|
+
fmuls 120(%ebx)
|
|
532
|
+
fsts 92(%edx)
|
|
533
|
+
fadds 92(%ecx)
|
|
534
|
+
fadds 88(%ecx)
|
|
535
|
+
fld %st(0)
|
|
536
|
+
fadds 80(%ecx)
|
|
537
|
+
fadds 84(%ecx)
|
|
538
|
+
fstps 80(%edx)
|
|
539
|
+
flds 80(%ecx)
|
|
540
|
+
fsubs 84(%ecx)
|
|
541
|
+
fmuls 120(%ebx)
|
|
542
|
+
fadd %st(0), %st(1)
|
|
543
|
+
fadds 92(%edx)
|
|
544
|
+
fstps 84(%edx)
|
|
545
|
+
fstps 88(%edx)
|
|
546
|
+
flds 96(%ecx)
|
|
547
|
+
fadds 100(%ecx)
|
|
548
|
+
fstps 96(%edx)
|
|
549
|
+
flds 96(%ecx)
|
|
550
|
+
fsubs 100(%ecx)
|
|
551
|
+
fmuls 120(%ebx)
|
|
552
|
+
fstps 100(%edx)
|
|
553
|
+
flds 108(%ecx)
|
|
554
|
+
fsubs 104(%ecx)
|
|
555
|
+
fmuls 120(%ebx)
|
|
556
|
+
fsts 108(%edx)
|
|
557
|
+
fadds 104(%ecx)
|
|
558
|
+
fadds 108(%ecx)
|
|
559
|
+
fstps 104(%edx)
|
|
560
|
+
flds 124(%ecx)
|
|
561
|
+
fsubs 120(%ecx)
|
|
562
|
+
fmuls 120(%ebx)
|
|
563
|
+
fsts 124(%edx)
|
|
564
|
+
fadds 120(%ecx)
|
|
565
|
+
fadds 124(%ecx)
|
|
566
|
+
fld %st(0)
|
|
567
|
+
fadds 112(%ecx)
|
|
568
|
+
fadds 116(%ecx)
|
|
569
|
+
fstps 112(%edx)
|
|
570
|
+
flds 112(%ecx)
|
|
571
|
+
fsubs 116(%ecx)
|
|
572
|
+
fmuls 120(%ebx)
|
|
573
|
+
fadd %st(0),%st(1)
|
|
574
|
+
fadds 124(%edx)
|
|
575
|
+
fstps 116(%edx)
|
|
576
|
+
fstps 120(%edx)
|
|
577
|
+
jnz .L01
|
|
578
|
+
|
|
579
|
+
flds (%ecx)
|
|
580
|
+
fadds 4(%ecx)
|
|
581
|
+
fstps 1024(%esi)
|
|
582
|
+
flds (%ecx)
|
|
583
|
+
fsubs 4(%ecx)
|
|
584
|
+
fmuls 120(%ebx)
|
|
585
|
+
fsts (%esi)
|
|
586
|
+
fstps (%edi)
|
|
587
|
+
flds 12(%ecx)
|
|
588
|
+
fsubs 8(%ecx)
|
|
589
|
+
fmuls 120(%ebx)
|
|
590
|
+
fsts 512(%edi)
|
|
591
|
+
fadds 12(%ecx)
|
|
592
|
+
fadds 8(%ecx)
|
|
593
|
+
fstps 512(%esi)
|
|
594
|
+
flds 16(%ecx)
|
|
595
|
+
fsubs 20(%ecx)
|
|
596
|
+
fmuls 120(%ebx)
|
|
597
|
+
flds 28(%ecx)
|
|
598
|
+
fsubs 24(%ecx)
|
|
599
|
+
fmuls 120(%ebx)
|
|
600
|
+
fsts 768(%edi)
|
|
601
|
+
fld %st(0)
|
|
602
|
+
fadds 24(%ecx)
|
|
603
|
+
fadds 28(%ecx)
|
|
604
|
+
fld %st(0)
|
|
605
|
+
fadds 16(%ecx)
|
|
606
|
+
fadds 20(%ecx)
|
|
607
|
+
fstps 768(%esi)
|
|
608
|
+
fadd %st(2)
|
|
609
|
+
fstps 256(%esi)
|
|
610
|
+
faddp %st(1)
|
|
611
|
+
fstps 256(%edi)
|
|
612
|
+
|
|
613
|
+
flds 32(%edx)
|
|
614
|
+
fadds 48(%edx)
|
|
615
|
+
fstps 896(%esi)
|
|
616
|
+
flds 48(%edx)
|
|
617
|
+
fadds 40(%edx)
|
|
618
|
+
fstps 640(%esi)
|
|
619
|
+
flds 40(%edx)
|
|
620
|
+
fadds 56(%edx)
|
|
621
|
+
fstps 384(%esi)
|
|
622
|
+
flds 56(%edx)
|
|
623
|
+
fadds 36(%edx)
|
|
624
|
+
fstps 128(%esi)
|
|
625
|
+
flds 36(%edx)
|
|
626
|
+
fadds 52(%edx)
|
|
627
|
+
fstps 128(%edi)
|
|
628
|
+
flds 52(%edx)
|
|
629
|
+
fadds 44(%edx)
|
|
630
|
+
fstps 384(%edi)
|
|
631
|
+
flds 60(%edx)
|
|
632
|
+
fsts 896(%edi)
|
|
633
|
+
fadds 44(%edx)
|
|
634
|
+
fstps 640(%edi)
|
|
635
|
+
flds 96(%edx)
|
|
636
|
+
fadds 112(%edx)
|
|
637
|
+
fld %st(0)
|
|
638
|
+
fadds 64(%edx)
|
|
639
|
+
fstps 960(%esi)
|
|
640
|
+
fadds 80(%edx)
|
|
641
|
+
fstps 832(%esi)
|
|
642
|
+
flds 112(%edx)
|
|
643
|
+
fadds 104(%edx)
|
|
644
|
+
fld %st(0)
|
|
645
|
+
fadds 80(%edx)
|
|
646
|
+
fstps 704(%esi)
|
|
647
|
+
fadds 72(%edx)
|
|
648
|
+
fstps 576(%esi)
|
|
649
|
+
flds 104(%edx)
|
|
650
|
+
fadds 120(%edx)
|
|
651
|
+
fld %st(0)
|
|
652
|
+
fadds 72(%edx)
|
|
653
|
+
fstps 448(%esi)
|
|
654
|
+
fadds 88(%edx)
|
|
655
|
+
fstps 320(%esi)
|
|
656
|
+
flds 120(%edx)
|
|
657
|
+
fadds 100(%edx)
|
|
658
|
+
fld %st(0)
|
|
659
|
+
fadds 88(%edx)
|
|
660
|
+
fstps 192(%esi)
|
|
661
|
+
fadds 68(%edx)
|
|
662
|
+
fstps 64(%esi)
|
|
663
|
+
flds 100(%edx)
|
|
664
|
+
fadds 116(%edx)
|
|
665
|
+
fld %st(0)
|
|
666
|
+
fadds 68(%edx)
|
|
667
|
+
fstps 64(%edi)
|
|
668
|
+
fadds 84(%edx)
|
|
669
|
+
fstps 192(%edi)
|
|
670
|
+
flds 116(%edx)
|
|
671
|
+
fadds 108(%edx)
|
|
672
|
+
fld %st(0)
|
|
673
|
+
fadds 84(%edx)
|
|
674
|
+
fstps 320(%edi)
|
|
675
|
+
fadds 76(%edx)
|
|
676
|
+
fstps 448(%edi)
|
|
677
|
+
flds 108(%edx)
|
|
678
|
+
fadds 124(%edx)
|
|
679
|
+
fld %st(0)
|
|
680
|
+
fadds 76(%edx)
|
|
681
|
+
fstps 576(%edi)
|
|
682
|
+
fadds 92(%edx)
|
|
683
|
+
fstps 704(%edi)
|
|
684
|
+
flds 124(%edx)
|
|
685
|
+
fsts 960(%edi)
|
|
686
|
+
fadds 92(%edx)
|
|
687
|
+
fstps 832(%edi)
|
|
688
|
+
addl $256,%esp
|
|
689
|
+
popl %edi
|
|
690
|
+
popl %esi
|
|
691
|
+
popl %ebx
|
|
692
|
+
ret
|
|
693
|
+
.L01:
|
|
694
|
+
flds (%ecx)
|
|
695
|
+
fadds 4(%ecx)
|
|
696
|
+
fistps 512(%esi)
|
|
697
|
+
flds (%ecx)
|
|
698
|
+
fsubs 4(%ecx)
|
|
699
|
+
fmuls 120(%ebx)
|
|
700
|
+
|
|
701
|
+
fistps (%esi)
|
|
702
|
+
|
|
703
|
+
flds 12(%ecx)
|
|
704
|
+
fsubs 8(%ecx)
|
|
705
|
+
fmuls 120(%ebx)
|
|
706
|
+
fists 256(%edi)
|
|
707
|
+
fadds 12(%ecx)
|
|
708
|
+
fadds 8(%ecx)
|
|
709
|
+
fistps 256(%esi)
|
|
710
|
+
flds 16(%ecx)
|
|
711
|
+
fsubs 20(%ecx)
|
|
712
|
+
fmuls 120(%ebx)
|
|
713
|
+
flds 28(%ecx)
|
|
714
|
+
fsubs 24(%ecx)
|
|
715
|
+
fmuls 120(%ebx)
|
|
716
|
+
fists 384(%edi)
|
|
717
|
+
fld %st(0)
|
|
718
|
+
fadds 24(%ecx)
|
|
719
|
+
fadds 28(%ecx)
|
|
720
|
+
fld %st(0)
|
|
721
|
+
fadds 16(%ecx)
|
|
722
|
+
fadds 20(%ecx)
|
|
723
|
+
fistps 384(%esi)
|
|
724
|
+
fadd %st(2)
|
|
725
|
+
fistps 128(%esi)
|
|
726
|
+
faddp %st(1)
|
|
727
|
+
fistps 128(%edi)
|
|
728
|
+
|
|
729
|
+
flds 32(%edx)
|
|
730
|
+
fadds 48(%edx)
|
|
731
|
+
fistps 448(%esi)
|
|
732
|
+
flds 48(%edx)
|
|
733
|
+
fadds 40(%edx)
|
|
734
|
+
fistps 320(%esi)
|
|
735
|
+
flds 40(%edx)
|
|
736
|
+
fadds 56(%edx)
|
|
737
|
+
fistps 192(%esi)
|
|
738
|
+
flds 56(%edx)
|
|
739
|
+
fadds 36(%edx)
|
|
740
|
+
fistps 64(%esi)
|
|
741
|
+
flds 36(%edx)
|
|
742
|
+
fadds 52(%edx)
|
|
743
|
+
fistps 64(%edi)
|
|
744
|
+
flds 52(%edx)
|
|
745
|
+
fadds 44(%edx)
|
|
746
|
+
fistps 192(%edi)
|
|
747
|
+
flds 60(%edx)
|
|
748
|
+
fists 448(%edi)
|
|
749
|
+
fadds 44(%edx)
|
|
750
|
+
fistps 320(%edi)
|
|
751
|
+
flds 96(%edx)
|
|
752
|
+
fadds 112(%edx)
|
|
753
|
+
fld %st(0)
|
|
754
|
+
fadds 64(%edx)
|
|
755
|
+
fistps 480(%esi)
|
|
756
|
+
fadds 80(%edx)
|
|
757
|
+
fistps 416(%esi)
|
|
758
|
+
flds 112(%edx)
|
|
759
|
+
fadds 104(%edx)
|
|
760
|
+
fld %st(0)
|
|
761
|
+
fadds 80(%edx)
|
|
762
|
+
fistps 352(%esi)
|
|
763
|
+
fadds 72(%edx)
|
|
764
|
+
fistps 288(%esi)
|
|
765
|
+
flds 104(%edx)
|
|
766
|
+
fadds 120(%edx)
|
|
767
|
+
fld %st(0)
|
|
768
|
+
fadds 72(%edx)
|
|
769
|
+
fistps 224(%esi)
|
|
770
|
+
fadds 88(%edx)
|
|
771
|
+
fistps 160(%esi)
|
|
772
|
+
flds 120(%edx)
|
|
773
|
+
fadds 100(%edx)
|
|
774
|
+
fld %st(0)
|
|
775
|
+
fadds 88(%edx)
|
|
776
|
+
fistps 96(%esi)
|
|
777
|
+
fadds 68(%edx)
|
|
778
|
+
fistps 32(%esi)
|
|
779
|
+
flds 100(%edx)
|
|
780
|
+
fadds 116(%edx)
|
|
781
|
+
fld %st(0)
|
|
782
|
+
fadds 68(%edx)
|
|
783
|
+
fistps 32(%edi)
|
|
784
|
+
fadds 84(%edx)
|
|
785
|
+
fistps 96(%edi)
|
|
786
|
+
flds 116(%edx)
|
|
787
|
+
fadds 108(%edx)
|
|
788
|
+
fld %st(0)
|
|
789
|
+
fadds 84(%edx)
|
|
790
|
+
fistps 160(%edi)
|
|
791
|
+
fadds 76(%edx)
|
|
792
|
+
fistps 224(%edi)
|
|
793
|
+
flds 108(%edx)
|
|
794
|
+
fadds 124(%edx)
|
|
795
|
+
fld %st(0)
|
|
796
|
+
fadds 76(%edx)
|
|
797
|
+
fistps 288(%edi)
|
|
798
|
+
fadds 92(%edx)
|
|
799
|
+
fistps 352(%edi)
|
|
800
|
+
flds 124(%edx)
|
|
801
|
+
fists 480(%edi)
|
|
802
|
+
fadds 92(%edx)
|
|
803
|
+
fistps 416(%edi)
|
|
804
|
+
movsw
|
|
805
|
+
addl $256,%esp
|
|
806
|
+
popl %edi
|
|
807
|
+
popl %esi
|
|
808
|
+
popl %ebx
|
|
809
|
+
ret
|
|
810
|
+
|
|
811
|
+
NONEXEC_STACK
|