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.
Files changed (421) hide show
  1. data/.yardopts +1 -0
  2. data/LICENSE +13 -0
  3. data/README.md +265 -0
  4. data/ext/seal/extconf.rb +45 -0
  5. data/include/al/al.h +724 -0
  6. data/include/al/alc.h +277 -0
  7. data/include/al/efx-presets.h +402 -0
  8. data/include/al/efx.h +758 -0
  9. data/include/mpg123/mpg123.h +1034 -0
  10. data/include/ogg/config_types.h +25 -0
  11. data/include/ogg/ogg.h +210 -0
  12. data/include/ogg/os_types.h +147 -0
  13. data/include/seal.h +23 -0
  14. data/include/seal/buf.h +143 -0
  15. data/include/seal/core.h +95 -0
  16. data/include/seal/efs.h +112 -0
  17. data/include/seal/err.h +93 -0
  18. data/include/seal/fmt.h +58 -0
  19. data/include/seal/listener.h +103 -0
  20. data/include/seal/raw.h +86 -0
  21. data/include/seal/rvb.h +520 -0
  22. data/include/seal/src.h +413 -0
  23. data/include/seal/stream.h +81 -0
  24. data/include/vorbis/codec.h +243 -0
  25. data/include/vorbis/vorbisfile.h +206 -0
  26. data/mpg123/AUTHORS +150 -0
  27. data/mpg123/COPYING +773 -0
  28. data/mpg123/ChangeLog +3 -0
  29. data/mpg123/INSTALL +111 -0
  30. data/mpg123/Makefile.am +99 -0
  31. data/mpg123/Makefile.in +1043 -0
  32. data/mpg123/NEWS +1200 -0
  33. data/mpg123/NEWS.libmpg123 +133 -0
  34. data/mpg123/README +203 -0
  35. data/mpg123/TODO +38 -0
  36. data/mpg123/aclocal.m4 +1168 -0
  37. data/mpg123/build/config.guess +1530 -0
  38. data/mpg123/build/config.sub +1782 -0
  39. data/mpg123/build/depcomp +707 -0
  40. data/mpg123/build/install-sh +527 -0
  41. data/mpg123/build/ltmain.sh +9655 -0
  42. data/mpg123/build/missing +330 -0
  43. data/mpg123/configure +20267 -0
  44. data/mpg123/configure.ac +2178 -0
  45. data/mpg123/doc/ACCURACY +2 -0
  46. data/mpg123/doc/BENCHMARKING +110 -0
  47. data/mpg123/doc/BUGS +3 -0
  48. data/mpg123/doc/CONTACT +17 -0
  49. data/mpg123/doc/LICENSE +22 -0
  50. data/mpg123/doc/Makefile.am +32 -0
  51. data/mpg123/doc/Makefile.in +490 -0
  52. data/mpg123/doc/PATENTS +39 -0
  53. data/mpg123/doc/README.3DNOW +56 -0
  54. data/mpg123/doc/README.gain +171 -0
  55. data/mpg123/doc/README.remote +218 -0
  56. data/mpg123/doc/ROAD_TO_LGPL +270 -0
  57. data/mpg123/doc/THANKS +13 -0
  58. data/mpg123/doc/TODO +63 -0
  59. data/mpg123/doc/doxy_examples.c +21 -0
  60. data/mpg123/doc/doxygen.conf +41 -0
  61. data/mpg123/doc/doxyhead.xhtml +12 -0
  62. data/mpg123/doc/examples/dump_seekindex.c +41 -0
  63. data/mpg123/doc/examples/extract_frames.c +92 -0
  64. data/mpg123/doc/examples/feedseek.c +238 -0
  65. data/mpg123/doc/examples/id3dump.c +178 -0
  66. data/mpg123/doc/examples/mpg123_to_wav.c +118 -0
  67. data/mpg123/doc/examples/mpglib.c +92 -0
  68. data/mpg123/doc/examples/scan.c +47 -0
  69. data/mpg123/doc/libmpg123_speed.txt +84 -0
  70. data/mpg123/equalize.dat +37 -0
  71. data/mpg123/libmpg123.pc.in +11 -0
  72. data/mpg123/m4/addrconfig.m4 +34 -0
  73. data/mpg123/m4/libtool.m4 +7982 -0
  74. data/mpg123/m4/ltoptions.m4 +384 -0
  75. data/mpg123/m4/ltsugar.m4 +123 -0
  76. data/mpg123/m4/ltversion.m4 +23 -0
  77. data/mpg123/m4/lt~obsolete.m4 +98 -0
  78. data/mpg123/makedll.sh +19 -0
  79. data/mpg123/man1/mpg123.1 +512 -0
  80. data/mpg123/mpg123.spec +68 -0
  81. data/mpg123/mpg123.spec.in +68 -0
  82. data/mpg123/ports/MSVC++/2005/libmpg123/libmpg123.vcproj +741 -0
  83. data/mpg123/ports/MSVC++/2008/dump_seekindex/dump_seekindex.vcproj +194 -0
  84. data/mpg123/ports/MSVC++/2008/feedseek/feedseek.vcproj +195 -0
  85. data/mpg123/ports/MSVC++/2008/libmpg123/libmpg123.vcproj +1357 -0
  86. data/mpg123/ports/MSVC++/2008/mpg123.sln +44 -0
  87. data/mpg123/ports/MSVC++/2008/mpglib/mpglib.vcproj +191 -0
  88. data/mpg123/ports/MSVC++/2008/scan/scan.vcproj +195 -0
  89. data/mpg123/ports/MSVC++/2008clr/2008clr.sln +81 -0
  90. data/mpg123/ports/MSVC++/2008clr/examples/ReplaceReaderclr/Program.cs +435 -0
  91. data/mpg123/ports/MSVC++/2008clr/examples/ReplaceReaderclr/Properties/AssemblyInfo.cs +36 -0
  92. data/mpg123/ports/MSVC++/2008clr/examples/ReplaceReaderclr/ReplaceReaderclr.csproj +72 -0
  93. data/mpg123/ports/MSVC++/2008clr/examples/feedseekclr/Program.cs +331 -0
  94. data/mpg123/ports/MSVC++/2008clr/examples/feedseekclr/Properties/AssemblyInfo.cs +36 -0
  95. data/mpg123/ports/MSVC++/2008clr/examples/feedseekclr/feedseekclr.csproj +71 -0
  96. data/mpg123/ports/MSVC++/2008clr/examples/scanclr/Program.cs +79 -0
  97. data/mpg123/ports/MSVC++/2008clr/examples/scanclr/Properties/AssemblyInfo.cs +36 -0
  98. data/mpg123/ports/MSVC++/2008clr/examples/scanclr/scanclr.csproj +70 -0
  99. data/mpg123/ports/MSVC++/2008clr/mpg123clr/AssemblyInfo.cpp +76 -0
  100. data/mpg123/ports/MSVC++/2008clr/mpg123clr/ReadMe.txt +165 -0
  101. data/mpg123/ports/MSVC++/2008clr/mpg123clr/advanced.cpp +91 -0
  102. data/mpg123/ports/MSVC++/2008clr/mpg123clr/advanced.h +130 -0
  103. data/mpg123/ports/MSVC++/2008clr/mpg123clr/dllmain.cpp +19 -0
  104. data/mpg123/ports/MSVC++/2008clr/mpg123clr/enum.h +218 -0
  105. data/mpg123/ports/MSVC++/2008clr/mpg123clr/error.cpp +48 -0
  106. data/mpg123/ports/MSVC++/2008clr/mpg123clr/error.h +134 -0
  107. data/mpg123/ports/MSVC++/2008clr/mpg123clr/id3v1.cpp +92 -0
  108. data/mpg123/ports/MSVC++/2008clr/mpg123clr/id3v1.h +132 -0
  109. data/mpg123/ports/MSVC++/2008clr/mpg123clr/id3v2.cpp +138 -0
  110. data/mpg123/ports/MSVC++/2008clr/mpg123clr/id3v2.h +152 -0
  111. data/mpg123/ports/MSVC++/2008clr/mpg123clr/mpg123clr.cpp +896 -0
  112. data/mpg123/ports/MSVC++/2008clr/mpg123clr/mpg123clr.h +953 -0
  113. data/mpg123/ports/MSVC++/2008clr/mpg123clr/mpg123clr.rc +102 -0
  114. data/mpg123/ports/MSVC++/2008clr/mpg123clr/mpg123clr.vcproj +328 -0
  115. data/mpg123/ports/MSVC++/2008clr/mpg123clr/resource.h +14 -0
  116. data/mpg123/ports/MSVC++/2008clr/mpg123clr/stdafx.cpp +8 -0
  117. data/mpg123/ports/MSVC++/2008clr/mpg123clr/stdafx.h +38 -0
  118. data/mpg123/ports/MSVC++/2008clr/mpg123clr/string.cpp +166 -0
  119. data/mpg123/ports/MSVC++/2008clr/mpg123clr/string.h +265 -0
  120. data/mpg123/ports/MSVC++/2008clr/mpg123clr/targetver.h +24 -0
  121. data/mpg123/ports/MSVC++/2008clr/mpg123clr/text.cpp +67 -0
  122. data/mpg123/ports/MSVC++/2008clr/mpg123clr/text.h +111 -0
  123. data/mpg123/ports/MSVC++/2010/dump_seekindex/dump_seekindex.vcxproj +90 -0
  124. data/mpg123/ports/MSVC++/2010/dump_seekindex/dump_seekindex.vcxproj.filters +6 -0
  125. data/mpg123/ports/MSVC++/2010/feedseek/feedseek.vcxproj +95 -0
  126. data/mpg123/ports/MSVC++/2010/feedseek/feedseek.vcxproj.filters +6 -0
  127. data/mpg123/ports/MSVC++/2010/libmpg123/libmpg123.vcxproj +960 -0
  128. data/mpg123/ports/MSVC++/2010/libmpg123/libmpg123.vcxproj.user +3 -0
  129. data/mpg123/ports/MSVC++/2010/libmpg123/yasm.exe +0 -0
  130. data/mpg123/ports/MSVC++/2010/mpg123.sln +38 -0
  131. data/mpg123/ports/MSVC++/2010/scan/scan.vcxproj +93 -0
  132. data/mpg123/ports/MSVC++/2010/scan/scan.vcxproj.filters +6 -0
  133. data/mpg123/ports/MSVC++/CMP3Stream/INCLUDE/CORE/CORE_FileIn.H +15 -0
  134. data/mpg123/ports/MSVC++/CMP3Stream/INCLUDE/CORE/SourceFilter_MP3.H +139 -0
  135. data/mpg123/ports/MSVC++/CMP3Stream/INCLUDE/IIEP_Def.H +206 -0
  136. data/mpg123/ports/MSVC++/CMP3Stream/INCLUDE/IIEP_FileIn.H +167 -0
  137. data/mpg123/ports/MSVC++/CMP3Stream/README +4 -0
  138. data/mpg123/ports/MSVC++/CMP3Stream/SOURCE/CORE_FileIn.CPP +462 -0
  139. data/mpg123/ports/MSVC++/CMP3Stream/SOURCE/CORE_Log.CPP +122 -0
  140. data/mpg123/ports/MSVC++/CMP3Stream/SOURCE/CORE_Mutex.CPP +35 -0
  141. data/mpg123/ports/MSVC++/CMP3Stream/SOURCE/SourceFilter_MP3Stream.CPP +586 -0
  142. data/mpg123/ports/MSVC++/CMP3Stream/libMPG123/PLACE_LIBMPG123_SOURCES_HERE +0 -0
  143. data/mpg123/ports/MSVC++/CMP3Stream/libMPG123/libMPG123.vcproj +245 -0
  144. data/mpg123/ports/MSVC++/config.h +35 -0
  145. data/mpg123/ports/MSVC++/examples/feedseek.c +240 -0
  146. data/mpg123/ports/MSVC++/examples/scan.c +47 -0
  147. data/mpg123/ports/MSVC++/mpg123.h +46 -0
  148. data/mpg123/ports/MSVC++/msvc.c +59 -0
  149. data/mpg123/ports/README +26 -0
  150. data/mpg123/ports/Sony_PSP/Makefile.psp +38 -0
  151. data/mpg123/ports/Sony_PSP/README +11 -0
  152. data/mpg123/ports/Sony_PSP/config.h +368 -0
  153. data/mpg123/ports/Sony_PSP/readers.c.patch +2 -0
  154. data/mpg123/ports/Xcode/config.h +197 -0
  155. data/mpg123/ports/Xcode/mpg123.h +17 -0
  156. data/mpg123/ports/Xcode/mpg123.xcodeproj/project.pbxproj +670 -0
  157. data/mpg123/ports/mpg123_.pas +478 -0
  158. data/mpg123/scripts/benchmark-cpu.pl +56 -0
  159. data/mpg123/scripts/tag_lyrics.py +76 -0
  160. data/mpg123/src/Makefile.am +186 -0
  161. data/mpg123/src/Makefile.in +1097 -0
  162. data/mpg123/src/audio.c +725 -0
  163. data/mpg123/src/audio.h +106 -0
  164. data/mpg123/src/buffer.c +312 -0
  165. data/mpg123/src/buffer.h +45 -0
  166. data/mpg123/src/common.c +240 -0
  167. data/mpg123/src/common.h +29 -0
  168. data/mpg123/src/config.h.in +436 -0
  169. data/mpg123/src/control_generic.c +809 -0
  170. data/mpg123/src/equalizer.c +48 -0
  171. data/mpg123/src/genre.c +271 -0
  172. data/mpg123/src/genre.h +15 -0
  173. data/mpg123/src/getlopt.c +148 -0
  174. data/mpg123/src/getlopt.h +77 -0
  175. data/mpg123/src/httpget.c +700 -0
  176. data/mpg123/src/httpget.h +66 -0
  177. data/mpg123/src/legacy_module.c +74 -0
  178. data/mpg123/src/libmpg123/Makefile.am +141 -0
  179. data/mpg123/src/libmpg123/Makefile.in +919 -0
  180. data/mpg123/src/libmpg123/compat.c +138 -0
  181. data/mpg123/src/libmpg123/compat.h +178 -0
  182. data/mpg123/src/libmpg123/dct36_3dnow.S +505 -0
  183. data/mpg123/src/libmpg123/dct36_3dnowext.S +512 -0
  184. data/mpg123/src/libmpg123/dct64.c +174 -0
  185. data/mpg123/src/libmpg123/dct64_3dnow.S +712 -0
  186. data/mpg123/src/libmpg123/dct64_3dnowext.S +714 -0
  187. data/mpg123/src/libmpg123/dct64_altivec.c +315 -0
  188. data/mpg123/src/libmpg123/dct64_i386.c +336 -0
  189. data/mpg123/src/libmpg123/dct64_i486.c +342 -0
  190. data/mpg123/src/libmpg123/dct64_mmx.S +811 -0
  191. data/mpg123/src/libmpg123/dct64_neon.S +297 -0
  192. data/mpg123/src/libmpg123/dct64_neon_float.S +270 -0
  193. data/mpg123/src/libmpg123/dct64_sse.S +454 -0
  194. data/mpg123/src/libmpg123/dct64_sse_float.S +401 -0
  195. data/mpg123/src/libmpg123/dct64_x86_64.S +464 -0
  196. data/mpg123/src/libmpg123/dct64_x86_64_float.S +426 -0
  197. data/mpg123/src/libmpg123/debug.h +171 -0
  198. data/mpg123/src/libmpg123/decode.h +268 -0
  199. data/mpg123/src/libmpg123/dither.c +119 -0
  200. data/mpg123/src/libmpg123/dither.h +23 -0
  201. data/mpg123/src/libmpg123/equalizer.c +17 -0
  202. data/mpg123/src/libmpg123/equalizer_3dnow.S +70 -0
  203. data/mpg123/src/libmpg123/feature.c +106 -0
  204. data/mpg123/src/libmpg123/format.c +521 -0
  205. data/mpg123/src/libmpg123/frame.c +1046 -0
  206. data/mpg123/src/libmpg123/frame.h +410 -0
  207. data/mpg123/src/libmpg123/gapless.h +119 -0
  208. data/mpg123/src/libmpg123/getbits.h +100 -0
  209. data/mpg123/src/libmpg123/getcpuflags.S +91 -0
  210. data/mpg123/src/libmpg123/getcpuflags.h +47 -0
  211. data/mpg123/src/libmpg123/huffman.h +340 -0
  212. data/mpg123/src/libmpg123/icy.c +32 -0
  213. data/mpg123/src/libmpg123/icy.h +38 -0
  214. data/mpg123/src/libmpg123/icy2utf8.c +438 -0
  215. data/mpg123/src/libmpg123/icy2utf8.h +10 -0
  216. data/mpg123/src/libmpg123/id3.c +999 -0
  217. data/mpg123/src/libmpg123/id3.h +43 -0
  218. data/mpg123/src/libmpg123/index.c +134 -0
  219. data/mpg123/src/libmpg123/index.h +59 -0
  220. data/mpg123/src/libmpg123/intsym.h +256 -0
  221. data/mpg123/src/libmpg123/l12_integer_tables.h +278 -0
  222. data/mpg123/src/libmpg123/l2tables.h +164 -0
  223. data/mpg123/src/libmpg123/l3_integer_tables.h +1002 -0
  224. data/mpg123/src/libmpg123/layer1.c +155 -0
  225. data/mpg123/src/libmpg123/layer2.c +371 -0
  226. data/mpg123/src/libmpg123/layer3.c +2053 -0
  227. data/mpg123/src/libmpg123/lfs_alias.c +252 -0
  228. data/mpg123/src/libmpg123/lfs_wrap.c +751 -0
  229. data/mpg123/src/libmpg123/libmpg123.c +1607 -0
  230. data/mpg123/src/libmpg123/mangle.h +74 -0
  231. data/mpg123/src/libmpg123/mpeghead.h +87 -0
  232. data/mpg123/src/libmpg123/mpg123.h.in +1075 -0
  233. data/mpg123/src/libmpg123/mpg123lib_intern.h +338 -0
  234. data/mpg123/src/libmpg123/ntom.c +148 -0
  235. data/mpg123/src/libmpg123/optimize.c +964 -0
  236. data/mpg123/src/libmpg123/optimize.h +219 -0
  237. data/mpg123/src/libmpg123/parse.c +1179 -0
  238. data/mpg123/src/libmpg123/parse.h +25 -0
  239. data/mpg123/src/libmpg123/reader.h +137 -0
  240. data/mpg123/src/libmpg123/readers.c +1235 -0
  241. data/mpg123/src/libmpg123/sample.h +152 -0
  242. data/mpg123/src/libmpg123/stringbuf.c +163 -0
  243. data/mpg123/src/libmpg123/synth.c +816 -0
  244. data/mpg123/src/libmpg123/synth.h +196 -0
  245. data/mpg123/src/libmpg123/synth_3dnow.S +318 -0
  246. data/mpg123/src/libmpg123/synth_3dnowext.S +6 -0
  247. data/mpg123/src/libmpg123/synth_8bit.c +142 -0
  248. data/mpg123/src/libmpg123/synth_8bit.h +86 -0
  249. data/mpg123/src/libmpg123/synth_altivec.c +1057 -0
  250. data/mpg123/src/libmpg123/synth_arm.S +271 -0
  251. data/mpg123/src/libmpg123/synth_arm_accurate.S +287 -0
  252. data/mpg123/src/libmpg123/synth_i486.c +252 -0
  253. data/mpg123/src/libmpg123/synth_i586.S +336 -0
  254. data/mpg123/src/libmpg123/synth_i586_dither.S +375 -0
  255. data/mpg123/src/libmpg123/synth_mmx.S +125 -0
  256. data/mpg123/src/libmpg123/synth_mono.h +64 -0
  257. data/mpg123/src/libmpg123/synth_neon.S +123 -0
  258. data/mpg123/src/libmpg123/synth_neon_accurate.S +173 -0
  259. data/mpg123/src/libmpg123/synth_neon_float.S +149 -0
  260. data/mpg123/src/libmpg123/synth_neon_s32.S +168 -0
  261. data/mpg123/src/libmpg123/synth_ntom.h +213 -0
  262. data/mpg123/src/libmpg123/synth_real.c +404 -0
  263. data/mpg123/src/libmpg123/synth_s32.c +411 -0
  264. data/mpg123/src/libmpg123/synth_sse.S +6 -0
  265. data/mpg123/src/libmpg123/synth_sse3d.h +246 -0
  266. data/mpg123/src/libmpg123/synth_sse_accurate.S +294 -0
  267. data/mpg123/src/libmpg123/synth_sse_float.S +241 -0
  268. data/mpg123/src/libmpg123/synth_sse_s32.S +306 -0
  269. data/mpg123/src/libmpg123/synth_stereo_neon.S +175 -0
  270. data/mpg123/src/libmpg123/synth_stereo_neon_accurate.S +262 -0
  271. data/mpg123/src/libmpg123/synth_stereo_neon_float.S +220 -0
  272. data/mpg123/src/libmpg123/synth_stereo_neon_s32.S +247 -0
  273. data/mpg123/src/libmpg123/synth_stereo_sse_accurate.S +508 -0
  274. data/mpg123/src/libmpg123/synth_stereo_sse_float.S +416 -0
  275. data/mpg123/src/libmpg123/synth_stereo_sse_s32.S +540 -0
  276. data/mpg123/src/libmpg123/synth_stereo_x86_64.S +335 -0
  277. data/mpg123/src/libmpg123/synth_stereo_x86_64_accurate.S +454 -0
  278. data/mpg123/src/libmpg123/synth_stereo_x86_64_float.S +396 -0
  279. data/mpg123/src/libmpg123/synth_stereo_x86_64_s32.S +473 -0
  280. data/mpg123/src/libmpg123/synth_x86_64.S +244 -0
  281. data/mpg123/src/libmpg123/synth_x86_64_accurate.S +301 -0
  282. data/mpg123/src/libmpg123/synth_x86_64_float.S +259 -0
  283. data/mpg123/src/libmpg123/synth_x86_64_s32.S +312 -0
  284. data/mpg123/src/libmpg123/synths.h +52 -0
  285. data/mpg123/src/libmpg123/tabinit.c +294 -0
  286. data/mpg123/src/libmpg123/tabinit_mmx.S +210 -0
  287. data/mpg123/src/libmpg123/testcpu.c +35 -0
  288. data/mpg123/src/libmpg123/true.h +14 -0
  289. data/mpg123/src/local.c +63 -0
  290. data/mpg123/src/local.h +21 -0
  291. data/mpg123/src/metaprint.c +373 -0
  292. data/mpg123/src/metaprint.h +17 -0
  293. data/mpg123/src/module.c +306 -0
  294. data/mpg123/src/module.h +48 -0
  295. data/mpg123/src/mpg123.c +1405 -0
  296. data/mpg123/src/mpg123app.h +171 -0
  297. data/mpg123/src/output/Makefile.am +213 -0
  298. data/mpg123/src/output/Makefile.in +1238 -0
  299. data/mpg123/src/output/aix.c +300 -0
  300. data/mpg123/src/output/alib.c +209 -0
  301. data/mpg123/src/output/alsa.c +297 -0
  302. data/mpg123/src/output/arts.c +117 -0
  303. data/mpg123/src/output/coreaudio.c +370 -0
  304. data/mpg123/src/output/dummy.c +78 -0
  305. data/mpg123/src/output/esd.c +167 -0
  306. data/mpg123/src/output/hp.c +184 -0
  307. data/mpg123/src/output/jack.c +450 -0
  308. data/mpg123/src/output/mint.c +197 -0
  309. data/mpg123/src/output/nas.c +335 -0
  310. data/mpg123/src/output/openal.c +197 -0
  311. data/mpg123/src/output/os2.c +665 -0
  312. data/mpg123/src/output/oss.c +319 -0
  313. data/mpg123/src/output/portaudio.c +255 -0
  314. data/mpg123/src/output/pulse.c +164 -0
  315. data/mpg123/src/output/sdl.c +206 -0
  316. data/mpg123/src/output/sgi.c +213 -0
  317. data/mpg123/src/output/sndio.c +161 -0
  318. data/mpg123/src/output/sun.c +281 -0
  319. data/mpg123/src/output/win32.c +229 -0
  320. data/mpg123/src/playlist.c +596 -0
  321. data/mpg123/src/playlist.h +52 -0
  322. data/mpg123/src/resolver.c +319 -0
  323. data/mpg123/src/resolver.h +25 -0
  324. data/mpg123/src/sfifo.c +146 -0
  325. data/mpg123/src/sfifo.h +95 -0
  326. data/mpg123/src/streamdump.c +74 -0
  327. data/mpg123/src/streamdump.h +20 -0
  328. data/mpg123/src/term.c +479 -0
  329. data/mpg123/src/term.h +81 -0
  330. data/mpg123/src/tests/noise.c +52 -0
  331. data/mpg123/src/tests/plain_id3.c +109 -0
  332. data/mpg123/src/tests/seek_accuracy.c +261 -0
  333. data/mpg123/src/tests/seek_whence.c +56 -0
  334. data/mpg123/src/tests/testtext.h +34 -0
  335. data/mpg123/src/tests/text.c +80 -0
  336. data/mpg123/src/wav.c +464 -0
  337. data/mpg123/src/wavhead.h +68 -0
  338. data/mpg123/src/win32_net.c +599 -0
  339. data/mpg123/src/win32_support.c +191 -0
  340. data/mpg123/src/win32_support.h +152 -0
  341. data/mpg123/src/xfermem.c +321 -0
  342. data/mpg123/src/xfermem.h +74 -0
  343. data/mpg123/windows-builds.sh +137 -0
  344. data/msvc/lib/OpenAL32.lib +0 -0
  345. data/spec/fixtures/heal.ogg +0 -0
  346. data/spec/fixtures/tone_up.wav +0 -0
  347. data/spec/seal/buffer_spec.rb +37 -0
  348. data/spec/seal/core_spec.rb +29 -0
  349. data/spec/seal/effect_slot_spec.rb +38 -0
  350. data/spec/seal/listener_spec.rb +33 -0
  351. data/spec/seal/reverb_spec.rb +51 -0
  352. data/spec/seal/source_spec.rb +370 -0
  353. data/spec/seal/stream_spec.rb +38 -0
  354. data/spec/spec_helper.rb +45 -0
  355. data/spec/support/attribute_examples.rb +75 -0
  356. data/spec/support/audio_object_with_format.rb +27 -0
  357. data/spec/support/movable_object.rb +22 -0
  358. data/src/libogg/bitwise.c +857 -0
  359. data/src/libogg/framing.c +2093 -0
  360. data/src/libvorbis/backends.h +144 -0
  361. data/src/libvorbis/bitrate.c +253 -0
  362. data/src/libvorbis/bitrate.h +59 -0
  363. data/src/libvorbis/block.c +1046 -0
  364. data/src/libvorbis/codebook.c +484 -0
  365. data/src/libvorbis/codebook.h +119 -0
  366. data/src/libvorbis/codec_internal.h +167 -0
  367. data/src/libvorbis/envelope.c +375 -0
  368. data/src/libvorbis/envelope.h +80 -0
  369. data/src/libvorbis/floor0.c +221 -0
  370. data/src/libvorbis/floor1.c +1100 -0
  371. data/src/libvorbis/highlevel.h +58 -0
  372. data/src/libvorbis/info.c +668 -0
  373. data/src/libvorbis/lookup.c +94 -0
  374. data/src/libvorbis/lookup.h +32 -0
  375. data/src/libvorbis/lookup_data.h +192 -0
  376. data/src/libvorbis/lpc.c +160 -0
  377. data/src/libvorbis/lpc.h +29 -0
  378. data/src/libvorbis/lsp.c +456 -0
  379. data/src/libvorbis/lsp.h +28 -0
  380. data/src/libvorbis/mapping0.c +816 -0
  381. data/src/libvorbis/masking.h +785 -0
  382. data/src/libvorbis/mdct.c +563 -0
  383. data/src/libvorbis/mdct.h +71 -0
  384. data/src/libvorbis/misc.h +57 -0
  385. data/src/libvorbis/os.h +186 -0
  386. data/src/libvorbis/psy.c +1206 -0
  387. data/src/libvorbis/psy.h +154 -0
  388. data/src/libvorbis/registry.c +45 -0
  389. data/src/libvorbis/registry.h +32 -0
  390. data/src/libvorbis/res0.c +889 -0
  391. data/src/libvorbis/scales.h +90 -0
  392. data/src/libvorbis/sharedbook.c +579 -0
  393. data/src/libvorbis/smallft.c +1255 -0
  394. data/src/libvorbis/smallft.h +34 -0
  395. data/src/libvorbis/synthesis.c +184 -0
  396. data/src/libvorbis/vorbisfile.c +2337 -0
  397. data/src/libvorbis/window.c +2135 -0
  398. data/src/libvorbis/window.h +26 -0
  399. data/src/rubyext.c +2329 -0
  400. data/src/seal/buf.c +124 -0
  401. data/src/seal/core.c +283 -0
  402. data/src/seal/efs.c +74 -0
  403. data/src/seal/err.c +118 -0
  404. data/src/seal/fmt.c +86 -0
  405. data/src/seal/listener.c +111 -0
  406. data/src/seal/mpg.c +174 -0
  407. data/src/seal/mpg.h +24 -0
  408. data/src/seal/ov.c +180 -0
  409. data/src/seal/ov.h +22 -0
  410. data/src/seal/raw.c +59 -0
  411. data/src/seal/reader.c +102 -0
  412. data/src/seal/reader.h +59 -0
  413. data/src/seal/rvb.c +368 -0
  414. data/src/seal/src.c +654 -0
  415. data/src/seal/stream.c +109 -0
  416. data/src/seal/threading.c +66 -0
  417. data/src/seal/threading.h +20 -0
  418. data/src/seal/wav.c +297 -0
  419. data/src/seal/wav.h +23 -0
  420. data/src/win32api.rb +29 -0
  421. metadata +563 -0
@@ -0,0 +1,714 @@
1
+ /*
2
+ dct64_3dnowext: extended 3DNow optimized DCT64
3
+
4
+ copyright ?-2007 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
+
7
+ Transformed back into standalone asm, with help of
8
+ gcc -S -DHAVE_CONFIG_H -I. -march=k6-3 -O3 -Wall -pedantic -fno-strict-aliasing -DREAL_IS_FLOAT -c -o dct64_3dnowext.{S,c}
9
+
10
+ MPlayer comment follows.
11
+ */
12
+
13
+ /*
14
+ * This code was taken from http://www.mpg123.org
15
+ * See ChangeLog of mpg123-0.59s-pre.1 for detail
16
+ * Applied to mplayer by Nick Kurshev <nickols_k@mail.ru>
17
+ * Partial 3dnowex-DSP! optimization by Nick Kurshev
18
+ *
19
+ * TODO: optimize scalar 3dnow! code
20
+ * Warning: Phases 7 & 8 are not tested
21
+ */
22
+
23
+ #include "mangle.h"
24
+
25
+ .data
26
+ ALIGN4
27
+ /* .type plus_1f, @object
28
+ .size plus_1f, 4 */
29
+ plus_1f:
30
+ .long 1065353216
31
+ ALIGN8
32
+ /* .type x_plus_minus_3dnow, @object
33
+ .size x_plus_minus_3dnow, 8 */
34
+ x_plus_minus_3dnow:
35
+ .long 0
36
+ .long -2147483648
37
+
38
+ .text
39
+ ALIGN32
40
+ .globl ASM_NAME(dct64_3dnowext)
41
+ /* .type ASM_NAME(dct64_3dnowext), @function */
42
+ ASM_NAME(dct64_3dnowext):
43
+ pushl %ebp
44
+ movl %esp, %ebp
45
+ pushl %edi
46
+ pushl %esi
47
+ pushl %ebx
48
+ subl $256, %esp
49
+ /* APP */
50
+ movl 16(%ebp),%eax
51
+ leal 128+-268(%ebp),%edx
52
+ movl 8(%ebp),%esi
53
+ movl 12(%ebp),%edi
54
+ movl ASM_VALUE(costab_mmxsse),%ebx
55
+ leal -268(%ebp),%ecx
56
+ movq (%eax), %mm0
57
+ movq 8(%eax), %mm4
58
+ movq %mm0, %mm3
59
+ movq %mm4, %mm7
60
+ pswapd 120(%eax), %mm1
61
+ pswapd 112(%eax), %mm5
62
+ pfadd %mm1, %mm0
63
+ pfadd %mm5, %mm4
64
+ movq %mm0, (%edx)
65
+ movq %mm4, 8(%edx)
66
+ pfsub %mm1, %mm3
67
+ pfsub %mm5, %mm7
68
+ pfmul (%ebx), %mm3
69
+ pfmul 8(%ebx), %mm7
70
+ pswapd %mm3, %mm3
71
+ pswapd %mm7, %mm7
72
+ movq %mm3, 120(%edx)
73
+ movq %mm7, 112(%edx)
74
+ movq 16(%eax), %mm0
75
+ movq 24(%eax), %mm4
76
+ movq %mm0, %mm3
77
+ movq %mm4, %mm7
78
+ pswapd 104(%eax), %mm1
79
+ pswapd 96(%eax), %mm5
80
+ pfadd %mm1, %mm0
81
+ pfadd %mm5, %mm4
82
+ movq %mm0, 16(%edx)
83
+ movq %mm4, 24(%edx)
84
+ pfsub %mm1, %mm3
85
+ pfsub %mm5, %mm7
86
+ pfmul 16(%ebx), %mm3
87
+ pfmul 24(%ebx), %mm7
88
+ pswapd %mm3, %mm3
89
+ pswapd %mm7, %mm7
90
+ movq %mm3, 104(%edx)
91
+ movq %mm7, 96(%edx)
92
+ movq 32(%eax), %mm0
93
+ movq 40(%eax), %mm4
94
+ movq %mm0, %mm3
95
+ movq %mm4, %mm7
96
+ pswapd 88(%eax), %mm1
97
+ pswapd 80(%eax), %mm5
98
+ pfadd %mm1, %mm0
99
+ pfadd %mm5, %mm4
100
+ movq %mm0, 32(%edx)
101
+ movq %mm4, 40(%edx)
102
+ pfsub %mm1, %mm3
103
+ pfsub %mm5, %mm7
104
+ pfmul 32(%ebx), %mm3
105
+ pfmul 40(%ebx), %mm7
106
+ pswapd %mm3, %mm3
107
+ pswapd %mm7, %mm7
108
+ movq %mm3, 88(%edx)
109
+ movq %mm7, 80(%edx)
110
+ movq 48(%eax), %mm0
111
+ movq 56(%eax), %mm4
112
+ movq %mm0, %mm3
113
+ movq %mm4, %mm7
114
+ pswapd 72(%eax), %mm1
115
+ pswapd 64(%eax), %mm5
116
+ pfadd %mm1, %mm0
117
+ pfadd %mm5, %mm4
118
+ movq %mm0, 48(%edx)
119
+ movq %mm4, 56(%edx)
120
+ pfsub %mm1, %mm3
121
+ pfsub %mm5, %mm7
122
+ pfmul 48(%ebx), %mm3
123
+ pfmul 56(%ebx), %mm7
124
+ pswapd %mm3, %mm3
125
+ pswapd %mm7, %mm7
126
+ movq %mm3, 72(%edx)
127
+ movq %mm7, 64(%edx)
128
+ movq (%edx), %mm0
129
+ movq 8(%edx), %mm4
130
+ movq %mm0, %mm3
131
+ movq %mm4, %mm7
132
+ pswapd 56(%edx), %mm1
133
+ pswapd 48(%edx), %mm5
134
+ pfadd %mm1, %mm0
135
+ pfadd %mm5, %mm4
136
+ movq %mm0, (%ecx)
137
+ movq %mm4, 8(%ecx)
138
+ pfsub %mm1, %mm3
139
+ pfsub %mm5, %mm7
140
+ pfmul 64(%ebx), %mm3
141
+ pfmul 72(%ebx), %mm7
142
+ pswapd %mm3, %mm3
143
+ pswapd %mm7, %mm7
144
+ movq %mm3, 56(%ecx)
145
+ movq %mm7, 48(%ecx)
146
+ movq 16(%edx), %mm0
147
+ movq 24(%edx), %mm4
148
+ movq %mm0, %mm3
149
+ movq %mm4, %mm7
150
+ pswapd 40(%edx), %mm1
151
+ pswapd 32(%edx), %mm5
152
+ pfadd %mm1, %mm0
153
+ pfadd %mm5, %mm4
154
+ movq %mm0, 16(%ecx)
155
+ movq %mm4, 24(%ecx)
156
+ pfsub %mm1, %mm3
157
+ pfsub %mm5, %mm7
158
+ pfmul 80(%ebx), %mm3
159
+ pfmul 88(%ebx), %mm7
160
+ pswapd %mm3, %mm3
161
+ pswapd %mm7, %mm7
162
+ movq %mm3, 40(%ecx)
163
+ movq %mm7, 32(%ecx)
164
+ movq 64(%edx), %mm0
165
+ movq 72(%edx), %mm4
166
+ movq %mm0, %mm3
167
+ movq %mm4, %mm7
168
+ pswapd 120(%edx), %mm1
169
+ pswapd 112(%edx), %mm5
170
+ pfadd %mm1, %mm0
171
+ pfadd %mm5, %mm4
172
+ movq %mm0, 64(%ecx)
173
+ movq %mm4, 72(%ecx)
174
+ pfsubr %mm1, %mm3
175
+ pfsubr %mm5, %mm7
176
+ pfmul 64(%ebx), %mm3
177
+ pfmul 72(%ebx), %mm7
178
+ pswapd %mm3, %mm3
179
+ pswapd %mm7, %mm7
180
+ movq %mm3, 120(%ecx)
181
+ movq %mm7, 112(%ecx)
182
+ movq 80(%edx), %mm0
183
+ movq 88(%edx), %mm4
184
+ movq %mm0, %mm3
185
+ movq %mm4, %mm7
186
+ pswapd 104(%edx), %mm1
187
+ pswapd 96(%edx), %mm5
188
+ pfadd %mm1, %mm0
189
+ pfadd %mm5, %mm4
190
+ movq %mm0, 80(%ecx)
191
+ movq %mm4, 88(%ecx)
192
+ pfsubr %mm1, %mm3
193
+ pfsubr %mm5, %mm7
194
+ pfmul 80(%ebx), %mm3
195
+ pfmul 88(%ebx), %mm7
196
+ pswapd %mm3, %mm3
197
+ pswapd %mm7, %mm7
198
+ movq %mm3, 104(%ecx)
199
+ movq %mm7, 96(%ecx)
200
+ movq 96(%ebx), %mm2
201
+ movq 104(%ebx), %mm6
202
+ movq (%ecx), %mm0
203
+ movq 8(%ecx), %mm4
204
+ movq %mm0, %mm3
205
+ movq %mm4, %mm7
206
+ pswapd 24(%ecx), %mm1
207
+ pswapd 16(%ecx), %mm5
208
+ pfadd %mm1, %mm0
209
+ pfadd %mm5, %mm4
210
+ movq %mm0, (%edx)
211
+ movq %mm4, 8(%edx)
212
+ pfsub %mm1, %mm3
213
+ pfsub %mm5, %mm7
214
+ pfmul %mm2, %mm3
215
+ pfmul %mm6, %mm7
216
+ pswapd %mm3, %mm3
217
+ pswapd %mm7, %mm7
218
+ movq %mm3, 24(%edx)
219
+ movq %mm7, 16(%edx)
220
+ movq 32(%ecx), %mm0
221
+ movq 40(%ecx), %mm4
222
+ movq %mm0, %mm3
223
+ movq %mm4, %mm7
224
+ pswapd 56(%ecx), %mm1
225
+ pswapd 48(%ecx), %mm5
226
+ pfadd %mm1, %mm0
227
+ pfadd %mm5, %mm4
228
+ movq %mm0, 32(%edx)
229
+ movq %mm4, 40(%edx)
230
+ pfsubr %mm1, %mm3
231
+ pfsubr %mm5, %mm7
232
+ pfmul %mm2, %mm3
233
+ pfmul %mm6, %mm7
234
+ pswapd %mm3, %mm3
235
+ pswapd %mm7, %mm7
236
+ movq %mm3, 56(%edx)
237
+ movq %mm7, 48(%edx)
238
+ movq 64(%ecx), %mm0
239
+ movq 72(%ecx), %mm4
240
+ movq %mm0, %mm3
241
+ movq %mm4, %mm7
242
+ pswapd 88(%ecx), %mm1
243
+ pswapd 80(%ecx), %mm5
244
+ pfadd %mm1, %mm0
245
+ pfadd %mm5, %mm4
246
+ movq %mm0, 64(%edx)
247
+ movq %mm4, 72(%edx)
248
+ pfsub %mm1, %mm3
249
+ pfsub %mm5, %mm7
250
+ pfmul %mm2, %mm3
251
+ pfmul %mm6, %mm7
252
+ pswapd %mm3, %mm3
253
+ pswapd %mm7, %mm7
254
+ movq %mm3, 88(%edx)
255
+ movq %mm7, 80(%edx)
256
+ movq 96(%ecx), %mm0
257
+ movq 104(%ecx), %mm4
258
+ movq %mm0, %mm3
259
+ movq %mm4, %mm7
260
+ pswapd 120(%ecx), %mm1
261
+ pswapd 112(%ecx), %mm5
262
+ pfadd %mm1, %mm0
263
+ pfadd %mm5, %mm4
264
+ movq %mm0, 96(%edx)
265
+ movq %mm4, 104(%edx)
266
+ pfsubr %mm1, %mm3
267
+ pfsubr %mm5, %mm7
268
+ pfmul %mm2, %mm3
269
+ pfmul %mm6, %mm7
270
+ pswapd %mm3, %mm3
271
+ pswapd %mm7, %mm7
272
+ movq %mm3, 120(%edx)
273
+ movq %mm7, 112(%edx)
274
+ movq 112(%ebx), %mm2
275
+ movq (%edx), %mm0
276
+ movq 16(%edx), %mm4
277
+ movq %mm0, %mm3
278
+ movq %mm4, %mm7
279
+ pswapd 8(%edx), %mm1
280
+ pswapd 24(%edx), %mm5
281
+ pfadd %mm1, %mm0
282
+ pfadd %mm5, %mm4
283
+ movq %mm0, (%ecx)
284
+ movq %mm4, 16(%ecx)
285
+ pfsub %mm1, %mm3
286
+ pfsubr %mm5, %mm7
287
+ pfmul %mm2, %mm3
288
+ pfmul %mm2, %mm7
289
+ pswapd %mm3, %mm3
290
+ pswapd %mm7, %mm7
291
+ movq %mm3, 8(%ecx)
292
+ movq %mm7, 24(%ecx)
293
+ movq 32(%edx), %mm0
294
+ movq 48(%edx), %mm4
295
+ movq %mm0, %mm3
296
+ movq %mm4, %mm7
297
+ pswapd 40(%edx), %mm1
298
+ pswapd 56(%edx), %mm5
299
+ pfadd %mm1, %mm0
300
+ pfadd %mm5, %mm4
301
+ movq %mm0, 32(%ecx)
302
+ movq %mm4, 48(%ecx)
303
+ pfsub %mm1, %mm3
304
+ pfsubr %mm5, %mm7
305
+ pfmul %mm2, %mm3
306
+ pfmul %mm2, %mm7
307
+ pswapd %mm3, %mm3
308
+ pswapd %mm7, %mm7
309
+ movq %mm3, 40(%ecx)
310
+ movq %mm7, 56(%ecx)
311
+ movq 64(%edx), %mm0
312
+ movq 80(%edx), %mm4
313
+ movq %mm0, %mm3
314
+ movq %mm4, %mm7
315
+ pswapd 72(%edx), %mm1
316
+ pswapd 88(%edx), %mm5
317
+ pfadd %mm1, %mm0
318
+ pfadd %mm5, %mm4
319
+ movq %mm0, 64(%ecx)
320
+ movq %mm4, 80(%ecx)
321
+ pfsub %mm1, %mm3
322
+ pfsubr %mm5, %mm7
323
+ pfmul %mm2, %mm3
324
+ pfmul %mm2, %mm7
325
+ pswapd %mm3, %mm3
326
+ pswapd %mm7, %mm7
327
+ movq %mm3, 72(%ecx)
328
+ movq %mm7, 88(%ecx)
329
+ movq 96(%edx), %mm0
330
+ movq 112(%edx), %mm4
331
+ movq %mm0, %mm3
332
+ movq %mm4, %mm7
333
+ pswapd 104(%edx), %mm1
334
+ pswapd 120(%edx), %mm5
335
+ pfadd %mm1, %mm0
336
+ pfadd %mm5, %mm4
337
+ movq %mm0, 96(%ecx)
338
+ movq %mm4, 112(%ecx)
339
+ pfsub %mm1, %mm3
340
+ pfsubr %mm5, %mm7
341
+ pfmul %mm2, %mm3
342
+ pfmul %mm2, %mm7
343
+ pswapd %mm3, %mm3
344
+ pswapd %mm7, %mm7
345
+ movq %mm3, 104(%ecx)
346
+ movq %mm7, 120(%ecx)
347
+ movd plus_1f, %mm6
348
+ punpckldq 120(%ebx), %mm6
349
+ movq x_plus_minus_3dnow, %mm7
350
+ movq 32(%ecx), %mm0
351
+ movq 64(%ecx), %mm2
352
+ movq %mm0, %mm1
353
+ movq %mm2, %mm3
354
+ pxor %mm7, %mm1
355
+ pxor %mm7, %mm3
356
+ pfacc %mm1, %mm0
357
+ pfacc %mm3, %mm2
358
+ pfmul %mm6, %mm0
359
+ pfmul %mm6, %mm2
360
+ movq %mm0, 32(%edx)
361
+ movq %mm2, 64(%edx)
362
+ movd 44(%ecx), %mm0
363
+ movd 40(%ecx), %mm2
364
+ movd 120(%ebx), %mm3
365
+ punpckldq 76(%ecx), %mm0
366
+ punpckldq 72(%ecx), %mm2
367
+ punpckldq %mm3, %mm3
368
+ movq %mm0, %mm4
369
+ movq %mm2, %mm5
370
+ pfsub %mm2, %mm0
371
+ pfmul %mm3, %mm0
372
+ movq %mm0, %mm1
373
+ pfadd %mm5, %mm0
374
+ pfadd %mm4, %mm0
375
+ movq %mm0, %mm2
376
+ punpckldq %mm1, %mm0
377
+ punpckhdq %mm1, %mm2
378
+ movq %mm0, 40(%edx)
379
+ movq %mm2, 72(%edx)
380
+ movd 48(%ecx), %mm3
381
+ movd 60(%ecx), %mm2
382
+ pfsub 52(%ecx), %mm3
383
+ pfsub 56(%ecx), %mm2
384
+ pfmul 120(%ebx), %mm3
385
+ pfmul 120(%ebx), %mm2
386
+ movq %mm2, %mm1
387
+ pfadd 56(%ecx), %mm1
388
+ pfadd 60(%ecx), %mm1
389
+ movq %mm1, %mm0
390
+ pfadd 48(%ecx), %mm0
391
+ pfadd 52(%ecx), %mm0
392
+ pfadd %mm3, %mm1
393
+ punpckldq %mm2, %mm1
394
+ pfadd %mm3, %mm2
395
+ punpckldq %mm2, %mm0
396
+ movq %mm1, 56(%edx)
397
+ movq %mm0, 48(%edx)
398
+ movd 92(%ecx), %mm1
399
+ pfsub 88(%ecx), %mm1
400
+ pfmul 120(%ebx), %mm1
401
+ movd %mm1, 92(%edx)
402
+ pfadd 92(%ecx), %mm1
403
+ pfadd 88(%ecx), %mm1
404
+ movq %mm1, %mm0
405
+ pfadd 80(%ecx), %mm0
406
+ pfadd 84(%ecx), %mm0
407
+ movd %mm0, 80(%edx)
408
+ movd 80(%ecx), %mm0
409
+ pfsub 84(%ecx), %mm0
410
+ pfmul 120(%ebx), %mm0
411
+ pfadd %mm0, %mm1
412
+ pfadd 92(%edx), %mm0
413
+ punpckldq %mm1, %mm0
414
+ movq %mm0, 84(%edx)
415
+ movq 96(%ecx), %mm0
416
+ movq %mm0, %mm1
417
+ pxor %mm7, %mm1
418
+ pfacc %mm1, %mm0
419
+ pfmul %mm6, %mm0
420
+ movq %mm0, 96(%edx)
421
+ movd 108(%ecx), %mm0
422
+ pfsub 104(%ecx), %mm0
423
+ pfmul 120(%ebx), %mm0
424
+ movd %mm0, 108(%edx)
425
+ pfadd 104(%ecx), %mm0
426
+ pfadd 108(%ecx), %mm0
427
+ movd %mm0, 104(%edx)
428
+ movd 124(%ecx), %mm1
429
+ pfsub 120(%ecx), %mm1
430
+ pfmul 120(%ebx), %mm1
431
+ movd %mm1, 124(%edx)
432
+ pfadd 120(%ecx), %mm1
433
+ pfadd 124(%ecx), %mm1
434
+ movq %mm1, %mm0
435
+ pfadd 112(%ecx), %mm0
436
+ pfadd 116(%ecx), %mm0
437
+ movd %mm0, 112(%edx)
438
+ movd 112(%ecx), %mm0
439
+ pfsub 116(%ecx), %mm0
440
+ pfmul 120(%ebx), %mm0
441
+ pfadd %mm0,%mm1
442
+ pfadd 124(%edx), %mm0
443
+ punpckldq %mm1, %mm0
444
+ movq %mm0, 116(%edx)
445
+ jnz .L01
446
+ movd (%ecx), %mm0
447
+ pfadd 4(%ecx), %mm0
448
+ movd %mm0, 1024(%esi)
449
+ movd (%ecx), %mm0
450
+ pfsub 4(%ecx), %mm0
451
+ pfmul 120(%ebx), %mm0
452
+ movd %mm0, (%esi)
453
+ movd %mm0, (%edi)
454
+ movd 12(%ecx), %mm0
455
+ pfsub 8(%ecx), %mm0
456
+ pfmul 120(%ebx), %mm0
457
+ movd %mm0, 512(%edi)
458
+ pfadd 12(%ecx), %mm0
459
+ pfadd 8(%ecx), %mm0
460
+ movd %mm0, 512(%esi)
461
+ movd 16(%ecx), %mm0
462
+ pfsub 20(%ecx), %mm0
463
+ pfmul 120(%ebx), %mm0
464
+ movq %mm0, %mm3
465
+ movd 28(%ecx), %mm0
466
+ pfsub 24(%ecx), %mm0
467
+ pfmul 120(%ebx), %mm0
468
+ movd %mm0, 768(%edi)
469
+ movq %mm0, %mm2
470
+ pfadd 24(%ecx), %mm0
471
+ pfadd 28(%ecx), %mm0
472
+ movq %mm0, %mm1
473
+ pfadd 16(%ecx), %mm0
474
+ pfadd 20(%ecx), %mm0
475
+ movd %mm0, 768(%esi)
476
+ pfadd %mm3, %mm1
477
+ movd %mm1, 256(%esi)
478
+ pfadd %mm3, %mm2
479
+ movd %mm2, 256(%edi)
480
+ movq 32(%edx), %mm0
481
+ movq 48(%edx), %mm1
482
+ pfadd 48(%edx), %mm0
483
+ pfadd 40(%edx), %mm1
484
+ movd %mm0, 896(%esi)
485
+ movd %mm1, 640(%esi)
486
+ psrlq $32, %mm0
487
+ psrlq $32, %mm1
488
+ movd %mm0, 128(%edi)
489
+ movd %mm1, 384(%edi)
490
+ movd 40(%edx), %mm0
491
+ pfadd 56(%edx), %mm0
492
+ movd %mm0, 384(%esi)
493
+ movd 56(%edx), %mm0
494
+ pfadd 36(%edx), %mm0
495
+ movd %mm0, 128(%esi)
496
+ movd 60(%edx), %mm0
497
+ movd %mm0, 896(%edi)
498
+ pfadd 44(%edx), %mm0
499
+ movd %mm0, 640(%edi)
500
+ movq 96(%edx), %mm0
501
+ movq 112(%edx), %mm2
502
+ movq 104(%edx), %mm4
503
+ pfadd 112(%edx), %mm0
504
+ pfadd 104(%edx), %mm2
505
+ pfadd 120(%edx), %mm4
506
+ movq %mm0, %mm1
507
+ movq %mm2, %mm3
508
+ movq %mm4, %mm5
509
+ pfadd 64(%edx), %mm0
510
+ pfadd 80(%edx), %mm2
511
+ pfadd 72(%edx), %mm4
512
+ movd %mm0, 960(%esi)
513
+ movd %mm2, 704(%esi)
514
+ movd %mm4, 448(%esi)
515
+ psrlq $32, %mm0
516
+ psrlq $32, %mm2
517
+ psrlq $32, %mm4
518
+ movd %mm0, 64(%edi)
519
+ movd %mm2, 320(%edi)
520
+ movd %mm4, 576(%edi)
521
+ pfadd 80(%edx), %mm1
522
+ pfadd 72(%edx), %mm3
523
+ pfadd 88(%edx), %mm5
524
+ movd %mm1, 832(%esi)
525
+ movd %mm3, 576(%esi)
526
+ movd %mm5, 320(%esi)
527
+ psrlq $32, %mm1
528
+ psrlq $32, %mm3
529
+ psrlq $32, %mm5
530
+ movd %mm1, 192(%edi)
531
+ movd %mm3, 448(%edi)
532
+ movd %mm5, 704(%edi)
533
+ movd 120(%edx), %mm0
534
+ pfadd 100(%edx), %mm0
535
+ movq %mm0, %mm1
536
+ pfadd 88(%edx), %mm0
537
+ movd %mm0, 192(%esi)
538
+ pfadd 68(%edx), %mm1
539
+ movd %mm1, 64(%esi)
540
+ movd 124(%edx), %mm0
541
+ movd %mm0, 960(%edi)
542
+ pfadd 92(%edx), %mm0
543
+ movd %mm0, 832(%edi)
544
+ jmp .L_bye
545
+ .L01:
546
+ movq (%ecx), %mm0
547
+ movq %mm0, %mm1
548
+ pxor %mm7, %mm1
549
+ pfacc %mm1, %mm0
550
+ pfmul %mm6, %mm0
551
+ pf2iw %mm0, %mm0
552
+ movd %mm0, %eax
553
+ movw %ax, 512(%esi)
554
+ psrlq $32, %mm0
555
+ movd %mm0, %eax
556
+ movw %ax, (%esi)
557
+ movd 12(%ecx), %mm0
558
+ pfsub 8(%ecx), %mm0
559
+ pfmul 120(%ebx), %mm0
560
+ pf2iw %mm0, %mm7
561
+ movd %mm7, %eax
562
+ movw %ax, 256(%edi)
563
+ pfadd 12(%ecx), %mm0
564
+ pfadd 8(%ecx), %mm0
565
+ pf2iw %mm0, %mm0
566
+ movd %mm0, %eax
567
+ movw %ax, 256(%esi)
568
+ movd 16(%ecx), %mm3
569
+ pfsub 20(%ecx), %mm3
570
+ pfmul 120(%ebx), %mm3
571
+ movq %mm3, %mm2
572
+ movd 28(%ecx), %mm2
573
+ pfsub 24(%ecx), %mm2
574
+ pfmul 120(%ebx), %mm2
575
+ movq %mm2, %mm1
576
+ pf2iw %mm2, %mm7
577
+ movd %mm7, %eax
578
+ movw %ax, 384(%edi)
579
+ pfadd 24(%ecx), %mm1
580
+ pfadd 28(%ecx), %mm1
581
+ movq %mm1, %mm0
582
+ pfadd 16(%ecx), %mm0
583
+ pfadd 20(%ecx), %mm0
584
+ pf2iw %mm0, %mm0
585
+ movd %mm0, %eax
586
+ movw %ax, 384(%esi)
587
+ pfadd %mm3, %mm1
588
+ pf2iw %mm1, %mm1
589
+ movd %mm1, %eax
590
+ movw %ax, 128(%esi)
591
+ pfadd %mm3, %mm2
592
+ pf2iw %mm2, %mm2
593
+ movd %mm2, %eax
594
+ movw %ax, 128(%edi)
595
+ movq 32(%edx), %mm0
596
+ movq 48(%edx), %mm1
597
+ pfadd 48(%edx), %mm0
598
+ pfadd 40(%edx), %mm1
599
+ pf2iw %mm0, %mm0
600
+ pf2iw %mm1, %mm1
601
+ movd %mm0, %eax
602
+ movd %mm1, %ecx
603
+ movw %ax, 448(%esi)
604
+ movw %cx, 320(%esi)
605
+ psrlq $32, %mm0
606
+ psrlq $32, %mm1
607
+ movd %mm0, %eax
608
+ movd %mm1, %ecx
609
+ movw %ax, 64(%edi)
610
+ movw %cx, 192(%edi)
611
+ movd 40(%edx), %mm3
612
+ movd 56(%edx), %mm4
613
+ movd 60(%edx), %mm0
614
+ movd 44(%edx), %mm2
615
+ movd 120(%edx), %mm5
616
+ punpckldq %mm4, %mm3
617
+ punpckldq 124(%edx), %mm0
618
+ pfadd 100(%edx), %mm5
619
+ punpckldq 36(%edx), %mm4
620
+ punpckldq 92(%edx), %mm2
621
+ movq %mm5, %mm6
622
+ pfadd %mm4, %mm3
623
+ pf2iw %mm0, %mm1
624
+ pf2iw %mm3, %mm3
625
+ pfadd 88(%edx), %mm5
626
+ movd %mm1, %eax
627
+ movd %mm3, %ecx
628
+ movw %ax, 448(%edi)
629
+ movw %cx, 192(%esi)
630
+ pf2iw %mm5, %mm5
631
+ psrlq $32, %mm1
632
+ psrlq $32, %mm3
633
+ movd %mm5, %ebx
634
+ movd %mm1, %eax
635
+ movd %mm3, %ecx
636
+ movw %bx, 96(%esi)
637
+ movw %ax, 480(%edi)
638
+ movw %cx, 64(%esi)
639
+ pfadd %mm2, %mm0
640
+ pf2iw %mm0, %mm0
641
+ movd %mm0, %eax
642
+ pfadd 68(%edx), %mm6
643
+ movw %ax, 320(%edi)
644
+ psrlq $32, %mm0
645
+ pf2iw %mm6, %mm6
646
+ movd %mm0, %eax
647
+ movd %mm6, %ebx
648
+ movw %ax, 416(%edi)
649
+ movw %bx, 32(%esi)
650
+ movq 96(%edx), %mm0
651
+ movq 112(%edx), %mm2
652
+ movq 104(%edx), %mm4
653
+ pfadd %mm2, %mm0
654
+ pfadd %mm4, %mm2
655
+ pfadd 120(%edx), %mm4
656
+ movq %mm0, %mm1
657
+ movq %mm2, %mm3
658
+ movq %mm4, %mm5
659
+ pfadd 64(%edx), %mm0
660
+ pfadd 80(%edx), %mm2
661
+ pfadd 72(%edx), %mm4
662
+ pf2iw %mm0, %mm0
663
+ pf2iw %mm2, %mm2
664
+ pf2iw %mm4, %mm4
665
+ movd %mm0, %eax
666
+ movd %mm2, %ecx
667
+ movd %mm4, %ebx
668
+ movw %ax, 480(%esi)
669
+ movw %cx, 352(%esi)
670
+ movw %bx, 224(%esi)
671
+ psrlq $32, %mm0
672
+ psrlq $32, %mm2
673
+ psrlq $32, %mm4
674
+ movd %mm0, %eax
675
+ movd %mm2, %ecx
676
+ movd %mm4, %ebx
677
+ movw %ax, 32(%edi)
678
+ movw %cx, 160(%edi)
679
+ movw %bx, 288(%edi)
680
+ pfadd 80(%edx), %mm1
681
+ pfadd 72(%edx), %mm3
682
+ pfadd 88(%edx), %mm5
683
+ pf2iw %mm1, %mm1
684
+ pf2iw %mm3, %mm3
685
+ pf2iw %mm5, %mm5
686
+ movd %mm1, %eax
687
+ movd %mm3, %ecx
688
+ movd %mm5, %ebx
689
+ movw %ax, 416(%esi)
690
+ movw %cx, 288(%esi)
691
+ movw %bx, 160(%esi)
692
+ psrlq $32, %mm1
693
+ psrlq $32, %mm3
694
+ psrlq $32, %mm5
695
+ movd %mm1, %eax
696
+ movd %mm3, %ecx
697
+ movd %mm5, %ebx
698
+ movw %ax, 96(%edi)
699
+ movw %cx, 224(%edi)
700
+ movw %bx, 352(%edi)
701
+ movsw
702
+ .L_bye:
703
+ femms
704
+
705
+ /* NO_APP */
706
+ addl $256, %esp
707
+ popl %ebx
708
+ popl %esi
709
+ popl %edi
710
+ leave
711
+ ret
712
+ /* .size ASM_NAME(dct64_3dnowext), .-ASM_NAME(dct64_3dnowext) */
713
+
714
+ NONEXEC_STACK