OLD | NEW |
1 ; | 1 ; |
2 ; jdclrss2-64.asm - colorspace conversion (64-bit SSE2) | 2 ; jdclrss2-64.asm - colorspace conversion (64-bit SSE2) |
3 ; | 3 ; |
4 ; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB | 4 ; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB |
5 ; Copyright 2009 D. R. Commander | 5 ; Copyright 2009 D. R. Commander |
6 ; | 6 ; |
7 ; Based on | 7 ; Based on |
8 ; x86 SIMD extension for IJG JPEG library | 8 ; x86 SIMD extension for IJG JPEG library |
9 ; Copyright (C) 1999-2006, MIYASAKA Masaru. | 9 ; Copyright (C) 1999-2006, MIYASAKA Masaru. |
10 ; For conditions of distribution and use, see copyright notice in jsimdext.inc | 10 ; For conditions of distribution and use, see copyright notice in jsimdext.inc |
11 ; | 11 ; |
12 ; This file should be assembled with NASM (Netwide Assembler), | 12 ; This file should be assembled with NASM (Netwide Assembler), |
13 ; can *not* be assembled with Microsoft's MASM or any compatible | 13 ; can *not* be assembled with Microsoft's MASM or any compatible |
14 ; assembler (including Borland's Turbo Assembler). | 14 ; assembler (including Borland's Turbo Assembler). |
15 ; NASM is available from http://nasm.sourceforge.net/ or | 15 ; NASM is available from http://nasm.sourceforge.net/ or |
16 ; http://sourceforge.net/project/showfiles.php?group_id=6208 | 16 ; http://sourceforge.net/project/showfiles.php?group_id=6208 |
17 ; | 17 ; |
18 ; [TAB8] | 18 ; [TAB8] |
19 | 19 |
20 %include "jcolsamp.inc" | 20 %include "jcolsamp.inc" |
21 | 21 |
22 ; -------------------------------------------------------------------------- | 22 ; -------------------------------------------------------------------------- |
| 23 %ifndef NEED_SECTION |
| 24 %define NEED_SECTION |
23 SECTION SEG_TEXT | 25 SECTION SEG_TEXT |
24 BITS 64 | 26 BITS 64 |
| 27 %endif |
| 28 |
25 ; | 29 ; |
26 ; Convert some rows of samples to the output colorspace. | 30 ; Convert some rows of samples to the output colorspace. |
27 ; | 31 ; |
28 ; GLOBAL(void) | 32 ; GLOBAL(void) |
29 ; jsimd_ycc_rgb_convert_sse2 (JDIMENSION out_width, | 33 ; jsimd_ycc_rgb_convert_sse2 (JDIMENSION out_width, |
30 ; JSAMPIMAGE input_buf, JDIMENSION input_row, | 34 ; JSAMPIMAGE input_buf, JDIMENSION input_row, |
31 ; JSAMPARRAY output_buf, int num_rows) | 35 ; JSAMPARRAY output_buf, int num_rows) |
32 ; | 36 ; |
33 | 37 |
34 ; r10 = JDIMENSION out_width | 38 ; r10 = JDIMENSION out_width |
(...skipping 496 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
531 pop rbx | 535 pop rbx |
532 uncollect_args | 536 uncollect_args |
533 mov rsp,rbp ; rsp <- aligned rbp | 537 mov rsp,rbp ; rsp <- aligned rbp |
534 pop rsp ; rsp <- original rbp | 538 pop rsp ; rsp <- original rbp |
535 pop rbp | 539 pop rbp |
536 ret | 540 ret |
537 | 541 |
538 ; For some reason, the OS X linker does not honor the request to align the | 542 ; For some reason, the OS X linker does not honor the request to align the |
539 ; segment unless we do this. | 543 ; segment unless we do this. |
540 align 16 | 544 align 16 |
OLD | NEW |