| @@ -21,8 +21,6 @@ · 20 unmodified lines |
| 21 | | 21 | |
| 22 | %include "libavutil/x86/x86util.asm" | 22 | %include "libavutil/x86/x86util.asm" |
| 23 | | 23 | |
| 24 | %if ARCH_X86_64 | | |
| 25 | | | |
| 26 | SECTION_RODATA | 24 | SECTION_RODATA |
| 27 | | 25 | |
| 28 | pb_128: times 16 db 128 | 26 | pb_128: times 16 db 128 |
| @@ -36,12 +34,18 @@ INIT_XMM sse2 · 7 unmodified lines |
| 36 | ; void restore_rgb_planes(uint8_t *src_r, uint8_t *src_g, uint8_t *src_b, | 34 | ; void restore_rgb_planes(uint8_t *src_r, uint8_t *src_g, uint8_t *src_b, |
| 37 | ; ptrdiff_t linesize_r, ptrdiff_t linesize_g, ptrdiff_t linesize_b, | 35 | ; ptrdiff_t linesize_r, ptrdiff_t linesize_g, ptrdiff_t linesize_b, |
| 38 | ; int width, int height) | 36 | ; int width, int height) |
| 39 | cglobal restore_rgb_planes, 8,9,4, src_r, src_g, src_b, linesize_r, linesize_g, linesize_b, w, h, x | 37 | cglobal restore_rgb_planes, 7 + ARCH_X86_64, 7 + ARCH_X86_64 * 2, 4, src_r, src_g, src_b, linesize_r, linesize_g, linesize_b, w, h, x |
| 40 | movsxdifnidn wq, wd | 38 | movsxdifnidn wq, wd |
| 41 | add src_rq, wq | 39 | add src_rq, wq |
| 42 | add src_gq, wq | 40 | add src_gq, wq |
| 43 | add src_bq, wq | 41 | add src_bq, wq |
| 44 | neg wq | 42 | neg wq |
| | 43 | %if ARCH_X86_64 == 0 |
| | 44 | mov wm, wq |
| | 45 | DEFINE_ARGS src_r, src_g, src_b, linesize_r, linesize_g, linesize_b, x |
| | 46 | %define wq r6m |
| | 47 | %define hd r7mp |
| | 48 | %endif |
| 45 | mova m3, [pb_128] | 49 | mova m3, [pb_128] |
| 46 | .nextrow: | 50 | .nextrow: |
| 47 | mov xq, wq | 51 | mov xq, wq |
| @@ -65,7 +69,7 @@ cglobal restore_rgb_planes, 8,9,4, src_r, src_g, src_b, linesize_r, linesize_g, · 17 unmodified lines |
| 65 | jg .nextrow | 69 | jg .nextrow |
| 66 | REP_RET | 70 | REP_RET |
| 67 | | 71 | |
| 68 | cglobal restore_rgb_planes10, 8,9,5, src_r, src_g, src_b, linesize_r, linesize_g, linesize_b, w, h, x | 72 | cglobal restore_rgb_planes10, 7 + ARCH_X86_64, 7 + ARCH_X86_64 * 2, 5, src_r, src_g, src_b, linesize_r, linesize_g, linesize_b, w, h, x |
| 69 | shl wd, 1 | 73 | shl wd, 1 |
| 70 | shl linesize_rq, 1 | 74 | shl linesize_rq, 1 |
| 71 | shl linesize_gq, 1 | 75 | shl linesize_gq, 1 |
| @@ -76,6 +80,12 @@ cglobal restore_rgb_planes10, 8,9,5, src_r, src_g, src_b, linesize_r, linesize_g · 4 unmodified lines |
| 76 | mova m3, [pw_512] | 80 | mova m3, [pw_512] |
| 77 | mova m4, [pw_1023] | 81 | mova m4, [pw_1023] |
| 78 | neg wq | 82 | neg wq |
| | 83 | %if ARCH_X86_64 == 0 |
| | 84 | mov wm, wq |
| | 85 | DEFINE_ARGS src_r, src_g, src_b, linesize_r, linesize_g, linesize_b, x |
| | 86 | %define wq r6m |
| | 87 | %define hd r7mp |
| | 88 | %endif |
| 79 | .nextrow: | 89 | .nextrow: |
| 80 | mov xq, wq | 90 | mov xq, wq |
| 81 | | 91 | |
| @@ -99,5 +109,3 @@ cglobal restore_rgb_planes10, 8,9,5, src_r, src_g, src_b, linesize_r, linesize_g · 17 unmodified lines |
| 99 | sub hd, 1 | 109 | sub hd, 1 |
| 100 | jg .nextrow | 110 | jg .nextrow |
| 101 | REP_RET | 111 | REP_RET |
| 102 | | | |
| 103 | %endif | | |