diff options
author | Reimar Döffinger <Reimar.Doeffinger@gmx.de> | 2012-02-10 21:24:27 +0100 |
---|---|---|
committer | Reimar Döffinger <Reimar.Doeffinger@gmx.de> | 2012-02-10 23:18:52 +0100 |
commit | 394d41ee30b0c4a38a8d33b65e28facfef15d465 (patch) | |
tree | e2cfb346d36450cd0f7fc86179a0eefd516f076f | |
parent | 3fe00cac71ed8d375c8e938c726f154d1b961c0e (diff) | |
download | ffmpeg-394d41ee30b0c4a38a8d33b65e28facfef15d465.tar.gz |
Partially revert "Fix png decoding on x86."
This partially reverts commit 58dabf7bf2fdd08f79173da0df613127ff783028.
It is no longer necessary to use unaligned mov.
The swapped mov argument fix remains though.
-rw-r--r-- | libavcodec/pngdsp.h | 4 | ||||
-rw-r--r-- | libavcodec/x86/pngdsp.asm | 16 |
2 files changed, 10 insertions, 10 deletions
diff --git a/libavcodec/pngdsp.h b/libavcodec/pngdsp.h index f89a93a45a..98d29a8a2f 100644 --- a/libavcodec/pngdsp.h +++ b/libavcodec/pngdsp.h @@ -26,8 +26,8 @@ typedef struct PNGDSPContext { void (*add_bytes_l2)(uint8_t *dst /* align 16 */, - uint8_t *src1, - uint8_t *src2, int w); + uint8_t *src1 /* align 16 */, + uint8_t *src2 /* align 16 */, int w); /* this might write to dst[w] */ void (*add_paeth_prediction)(uint8_t *dst, uint8_t *src, diff --git a/libavcodec/x86/pngdsp.asm b/libavcodec/x86/pngdsp.asm index 9c588a97e9..8999c17c82 100644 --- a/libavcodec/x86/pngdsp.asm +++ b/libavcodec/x86/pngdsp.asm @@ -43,12 +43,12 @@ cglobal add_bytes_l2, 4, 6, %1, dst, src1, src2, wa, w, i and waq, ~(mmsize*2-1) jmp .end_v .loop_v: - movu m0, [src2q+iq] - movu m1, [src2q+iq+mmsize] - paddb m0, [src1q+iq] - paddb m1, [src1q+iq+mmsize] - movu [dstq+iq ], m0 - movu [dstq+iq+mmsize], m1 + mova m0, [src1q+iq] + mova m1, [src1q+iq+mmsize] + paddb m0, [src2q+iq] + paddb m1, [src2q+iq+mmsize] + mova [dstq+iq ], m0 + mova [dstq+iq+mmsize], m1 add iq, mmsize*2 .end_v: cmp iq, waq @@ -60,8 +60,8 @@ cglobal add_bytes_l2, 4, 6, %1, dst, src1, src2, wa, w, i and waq, ~7 jmp .end_l .loop_l: - movq mm0, [src2q+iq] - paddb mm0, [src1q+iq] + movq mm0, [src1q+iq] + paddb mm0, [src2q+iq] movq [dstq+iq ], mm0 add iq, 8 .end_l: |