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 /libavcodec | |
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.
Diffstat (limited to 'libavcodec')
-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: |