Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4)

Side by Side Diff: simd/jcclrss2-64.asm

Issue 1347093003: Rewrite the JDIMENSION argument management for x86 64-bit assembly to (Closed) Base URL: https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git@master
Patch Set: README.chromium Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « jmorecfg.h ('k') | simd/jcgryss2-64.asm » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 push rbp 43 push rbp
44 mov rax,rsp ; rax = original rbp 44 mov rax,rsp ; rax = original rbp
45 sub rsp, byte 4 45 sub rsp, byte 4
46 and rsp, byte (-SIZEOF_XMMWORD) ; align to 128 bits 46 and rsp, byte (-SIZEOF_XMMWORD) ; align to 128 bits
47 mov [rsp],rax 47 mov [rsp],rax
48 mov rbp,rsp ; rbp = aligned rbp 48 mov rbp,rsp ; rbp = aligned rbp
49 lea rsp, [wk(0)] 49 lea rsp, [wk(0)]
50 collect_args 50 collect_args
51 push rbx 51 push rbx
52 52
53 » mov» rcx, r10 53 » mov» ecx, r10d
54 test rcx,rcx 54 test rcx,rcx
55 jz near .return 55 jz near .return
56 56
57 push rcx 57 push rcx
58 58
59 mov rsi, r12 59 mov rsi, r12
60 » mov rcx, r13 60 » mov ecx, r13d
61 mov rdi, JSAMPARRAY [rsi+0*SIZEOF_JSAMPARRAY] 61 mov rdi, JSAMPARRAY [rsi+0*SIZEOF_JSAMPARRAY]
62 mov rbx, JSAMPARRAY [rsi+1*SIZEOF_JSAMPARRAY] 62 mov rbx, JSAMPARRAY [rsi+1*SIZEOF_JSAMPARRAY]
63 mov rdx, JSAMPARRAY [rsi+2*SIZEOF_JSAMPARRAY] 63 mov rdx, JSAMPARRAY [rsi+2*SIZEOF_JSAMPARRAY]
64 lea rdi, [rdi+rcx*SIZEOF_JSAMPROW] 64 lea rdi, [rdi+rcx*SIZEOF_JSAMPROW]
65 lea rbx, [rbx+rcx*SIZEOF_JSAMPROW] 65 lea rbx, [rbx+rcx*SIZEOF_JSAMPROW]
66 lea rdx, [rdx+rcx*SIZEOF_JSAMPROW] 66 lea rdx, [rdx+rcx*SIZEOF_JSAMPROW]
67 67
68 pop rcx 68 pop rcx
69 69
70 mov rsi, r11 70 mov rsi, r11
(...skipping 405 matching lines...) Expand 10 before | Expand all | Expand 10 after
476 pop rbx 476 pop rbx
477 uncollect_args 477 uncollect_args
478 mov rsp,rbp ; rsp <- aligned rbp 478 mov rsp,rbp ; rsp <- aligned rbp
479 pop rsp ; rsp <- original rbp 479 pop rsp ; rsp <- original rbp
480 pop rbp 480 pop rbp
481 ret 481 ret
482 482
483 ; 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
484 ; segment unless we do this. 484 ; segment unless we do this.
485 align 16 485 align 16
OLDNEW
« no previous file with comments | « jmorecfg.h ('k') | simd/jcgryss2-64.asm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698