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

Side by Side Diff: simd/jdclrss2-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 | « simd/jcsamss2-64.asm ('k') | simd/jdmrgss2-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 ; jdclrss2-64.asm - colorspace conversion (64-bit SSE2) 2 ; jdclrss2-64.asm - colorspace conversion (64-bit SSE2)
3 ; 3 ;
4 ; Copyright 2009, 2012 Pierre Ossman <ossman@cendio.se> for Cendio AB 4 ; Copyright 2009, 2012 Pierre Ossman <ossman@cendio.se> for Cendio AB
5 ; Copyright 2009, 2012 D. R. Commander 5 ; Copyright 2009, 2012 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
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
45 push rbp 45 push rbp
46 mov rax,rsp ; rax = original rbp 46 mov rax,rsp ; rax = original rbp
47 sub rsp, byte 4 47 sub rsp, byte 4
48 and rsp, byte (-SIZEOF_XMMWORD) ; align to 128 bits 48 and rsp, byte (-SIZEOF_XMMWORD) ; align to 128 bits
49 mov [rsp],rax 49 mov [rsp],rax
50 mov rbp,rsp ; rbp = aligned rbp 50 mov rbp,rsp ; rbp = aligned rbp
51 lea rsp, [wk(0)] 51 lea rsp, [wk(0)]
52 collect_args 52 collect_args
53 push rbx 53 push rbx
54 54
55 » mov» rcx, r10» ; num_cols 55 » mov» ecx, r10d» ; num_cols
56 test rcx,rcx 56 test rcx,rcx
57 jz near .return 57 jz near .return
58 58
59 push rcx 59 push rcx
60 60
61 mov rdi, r11 61 mov rdi, r11
62 » mov» rcx, r12 62 » mov» ecx, r12d
63 mov rsi, JSAMPARRAY [rdi+0*SIZEOF_JSAMPARRAY] 63 mov rsi, JSAMPARRAY [rdi+0*SIZEOF_JSAMPARRAY]
64 mov rbx, JSAMPARRAY [rdi+1*SIZEOF_JSAMPARRAY] 64 mov rbx, JSAMPARRAY [rdi+1*SIZEOF_JSAMPARRAY]
65 mov rdx, JSAMPARRAY [rdi+2*SIZEOF_JSAMPARRAY] 65 mov rdx, JSAMPARRAY [rdi+2*SIZEOF_JSAMPARRAY]
66 lea rsi, [rsi+rcx*SIZEOF_JSAMPROW] 66 lea rsi, [rsi+rcx*SIZEOF_JSAMPROW]
67 lea rbx, [rbx+rcx*SIZEOF_JSAMPROW] 67 lea rbx, [rbx+rcx*SIZEOF_JSAMPROW]
68 lea rdx, [rdx+rcx*SIZEOF_JSAMPROW] 68 lea rdx, [rdx+rcx*SIZEOF_JSAMPROW]
69 69
70 pop rcx 70 pop rcx
71 71
72 mov rdi, r13 72 mov rdi, r13
(...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after
432 pop rbx 432 pop rbx
433 uncollect_args 433 uncollect_args
434 mov rsp,rbp ; rsp <- aligned rbp 434 mov rsp,rbp ; rsp <- aligned rbp
435 pop rsp ; rsp <- original rbp 435 pop rsp ; rsp <- original rbp
436 pop rbp 436 pop rbp
437 ret 437 ret
438 438
439 ; For some reason, the OS X linker does not honor the request to align the 439 ; For some reason, the OS X linker does not honor the request to align the
440 ; segment unless we do this. 440 ; segment unless we do this.
441 align 16 441 align 16
OLDNEW
« no previous file with comments | « simd/jcsamss2-64.asm ('k') | simd/jdmrgss2-64.asm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698