Commit Graph

19 Commits

Author SHA1 Message Date
DRC
791e9b4316 Fixed regression caused by a bug in the 32-bit strict memory access code in jdmrgss2.asm (contributed by Chromium to stop valgrind from whining whenever the output buffer size was not evenly divisible by 16 bytes.) On Linux/x86, this regression caused incorrect pixels on the right-hand side of images whose rows were not 16-byte aligned, whenever fancy upsampling was used. This patch also enables the strict memory access code on all platforms, not just Linux (it does no harm on other platforms) and removes a couple of pcmpeqb instructions that were rendered unnecessary by r836. 2012-06-15 21:58:06 +00:00
DRC
ca423d39a3 Preserve all 128 bits of xmm6 and xmm7 2012-04-26 19:48:33 +00:00
DRC
90d7c850fa Fixed non-fatal out-of-bounds read in SSE2 SIMD code reported by valgrind when decompressing a JPEG image to a bitmap buffer whose size was not a multiple of 16 bytes. 2011-12-01 10:58:36 +00:00
DRC
fcdffa2265 Not necessary to save r10 and r11, since these are scratch registers 2011-05-10 21:44:33 +00:00
DRC
a399b5bbea YASM support 2011-05-03 06:32:41 +00:00
DRC
51a4282abc MinGW64 no longer prefixes symbols with underscores by default 2011-03-22 09:19:29 +00:00
DRC
0f7601bf85 xmm6-xmm15 must also be preserved by the callee; Win64 should fully work now 2010-04-23 15:41:34 +00:00
DRC
7321ba352c Updated (C) 2010-04-20 20:54:03 +00:00
DRC
ec65eee13b Win64 (mostly) works now 2010-04-20 19:15:09 +00:00
DRC
69ec314fb5 MinGW64 requires that the functions be prefixed with an underscore. Visual C++ apparently doesn't 2010-02-18 13:14:29 +00:00
DRC
b50c3ca33f First attempt at Win64 support 2010-02-18 13:03:41 +00:00
Adam Tkac
63c18bbe6c [Bugfix] Mark stack as non-executable in NASM code. 2010-01-27 10:10:23 +00:00
DRC
9b74d3f224 64-bit SIMD acceleration 2009-06-25 20:38:31 +00:00
Pierre Ossman
a63544a357 Work around subdirectory bug in older automake.
Older versions of automake doesn't properly support no-recursive make.
Reimplement the build system by having a local Makefile.am in the
simd/ directory.
2009-03-16 13:34:18 +00:00
Pierre Ossman
093fe3bb51 Add SSE2 SIMD implementation of computationally intensive routines. 2009-03-09 13:34:17 +00:00
Pierre Ossman
205cdc87d4 Add SSE SIMD implementation of computationally intensive routines. 2009-03-09 13:31:56 +00:00
Pierre Ossman
9a4a8bb721 Add 3DNow SIMD implementation of computationally intensive routines. 2009-03-09 13:28:10 +00:00
Pierre Ossman
649fe159ce Add MMX SIMD implementation of computationally intensive routines. 2009-03-09 13:25:30 +00:00
Pierre Ossman
863946aebd Implement x86 SIMD framework
Add NASM support and stub routine for detecting SIMD extensions.
2009-03-09 13:21:27 +00:00