OLD | NEW |
1 ; | 1 ; |
2 ; jcclrss2-64.asm - colorspace conversion (64-bit SSE2) | 2 ; jcclrss2-64.asm - colorspace conversion (64-bit SSE2) |
3 ; | 3 ; |
4 ; x86 SIMD extension for IJG JPEG library | 4 ; x86 SIMD extension for IJG JPEG library |
5 ; Copyright (C) 1999-2006, MIYASAKA Masaru. | 5 ; Copyright (C) 1999-2006, MIYASAKA Masaru. |
6 ; Copyright (C) 2009, D. R. Commander. | 6 ; Copyright (C) 2009, D. R. Commander. |
7 ; For conditions of distribution and use, see copyright notice in jsimdext.inc | 7 ; For conditions of distribution and use, see copyright notice in jsimdext.inc |
8 ; | 8 ; |
9 ; This file should be assembled with NASM (Netwide Assembler), | 9 ; This file should be assembled with NASM (Netwide Assembler), |
10 ; can *not* be assembled with Microsoft's MASM or any compatible | 10 ; can *not* be assembled with Microsoft's MASM or any compatible |
11 ; assembler (including Borland's Turbo Assembler). | 11 ; assembler (including Borland's Turbo Assembler). |
12 ; NASM is available from http://nasm.sourceforge.net/ or | 12 ; NASM is available from http://nasm.sourceforge.net/ or |
13 ; http://sourceforge.net/project/showfiles.php?group_id=6208 | 13 ; http://sourceforge.net/project/showfiles.php?group_id=6208 |
14 ; | 14 ; |
15 ; [TAB8] | 15 ; [TAB8] |
16 | 16 |
17 %include "jcolsamp.inc" | 17 %include "jcolsamp.inc" |
18 | 18 |
19 ; -------------------------------------------------------------------------- | 19 ; -------------------------------------------------------------------------- |
20 %ifndef NEED_SECTION | |
21 %define NEED_SECTION | |
22 SECTION SEG_TEXT | |
23 BITS 64 | |
24 %endif | |
25 | |
26 ; | 20 ; |
27 ; Convert some rows of samples to the output colorspace. | 21 ; Convert some rows of samples to the output colorspace. |
28 ; | 22 ; |
29 ; GLOBAL(void) | 23 ; GLOBAL(void) |
30 ; jsimd_rgb_ycc_convert_sse2 (JDIMENSION img_width, | 24 ; jsimd_rgb_ycc_convert_sse2 (JDIMENSION img_width, |
31 ; JSAMPARRAY input_buf, JSAMPIMAGE output_buf, | 25 ; JSAMPARRAY input_buf, JSAMPIMAGE output_buf, |
32 ; JDIMENSION output_row, int num_rows); | 26 ; JDIMENSION output_row, int num_rows); |
33 ; | 27 ; |
34 | 28 |
35 ; r10 = JDIMENSION img_width | 29 ; r10 = JDIMENSION img_width |
(...skipping 446 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
482 pop rbx | 476 pop rbx |
483 uncollect_args | 477 uncollect_args |
484 mov rsp,rbp ; rsp <- aligned rbp | 478 mov rsp,rbp ; rsp <- aligned rbp |
485 pop rsp ; rsp <- original rbp | 479 pop rsp ; rsp <- original rbp |
486 pop rbp | 480 pop rbp |
487 ret | 481 ret |
488 | 482 |
489 ; For some reason, the OS X linker does not honor the request to align the | 483 ; For some reason, the OS X linker does not honor the request to align the |
490 ; segment unless we do this. | 484 ; segment unless we do this. |
491 align 16 | 485 align 16 |
OLD | NEW |