Created
February 22, 2014 09:51
-
-
Save nico159/9151339 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
L__routine_start_main_0: | |
main: | |
pushq %rbp #65.12 | |
movq %rsp, %rbp #65.12 | |
andq $-128, %rsp #65.12 | |
pushq %r12 #65.12 | |
pushq %r13 #65.12 | |
pushq %r14 #65.12 | |
subq $232, %rsp #65.12 | |
movl $3, %edi #65.12 | |
call __intel_new_proc_init #65.12 | |
vstmxcsr 16(%rsp) #65.12 | |
movl $1111638594, %edx #53.22 | |
xorl %eax, %eax #66.2 | |
vmovdqu .L_2il0floatpacket.17(%rip), %xmm8 #22.22 | |
vmovdqu .L_2il0floatpacket.18(%rip), %xmm7 #23.27 | |
orl $32832, 16(%rsp) #65.12 | |
movl %eax, %r12d #41.24 | |
vmovd %edx, %xmm10 #53.22 | |
vmovdqa %xmm7, %xmm11 #41.24 | |
vpshufd $0, %xmm10, %xmm15 #53.22 | |
vpsrldq $4, %xmm8, %xmm13 #41.24 | |
vpsrldq $4, %xmm7, %xmm12 #41.24 | |
vldmxcsr 16(%rsp) #65.12 | |
vmovdqu %xmm12, 64(%rsp) #41.24 | |
vmovdqu %xmm13, 80(%rsp) #41.24 | |
vmovdqu %xmm15, 48(%rsp) #41.24 | |
..B1.2: # Preds ..B1.10 ..B1.14 | |
xorl %edi, %edi #38.2 | |
lea 96(%rsp), %rsi #38.2 | |
call clock_gettime #38.2 | |
xorl %edx, %edx #17.2 | |
movq 96(%rsp), %r13 #39.14 | |
xorl %eax, %eax # | |
movq 104(%rsp), %r14 #40.14 | |
vpxor %xmm11, %xmm11, %xmm11 # | |
vmovdqu 64(%rsp), %xmm5 # | |
vmovdqu 80(%rsp), %xmm6 # | |
vmovdqu .L_2il0floatpacket.12(%rip), %xmm4 #17.2 | |
vmovdqu .L_2il0floatpacket.13(%rip), %xmm3 #17.2 | |
vmovdqu .L_2il0floatpacket.14(%rip), %xmm2 #17.2 | |
vmovdqu .L_2il0floatpacket.15(%rip), %xmm0 #17.2 | |
vmovdqu .L_2il0floatpacket.17(%rip), %xmm1 # | |
vmovdqu .L_2il0floatpacket.18(%rip), %xmm7 # | |
vmovdqu .L_2il0floatpacket.24(%rip), %xmm8 # | |
vmovups .L_2il0floatpacket.20(%rip), %xmm9 # | |
vmovups .L_2il0floatpacket.19(%rip), %xmm10 # | |
vmovdqu .L_2il0floatpacket.16(%rip), %xmm12 # | |
vmovdqu .L_2il0floatpacket.11(%rip), %xmm13 # | |
..B1.4: # Preds ..B1.4 ..B1.3 | |
vpsrldq $4, %xmm6, %xmm15 #18.41 | |
addq $8, %rdx #17.2 | |
vmovd %xmm15, 112+trades(%rax) #18.41 | |
vpsrldq $4, %xmm15, %xmm14 #18.41 | |
vmovd %xmm15, 304+trades(%rax) #18.41 | |
vpsrldq $4, %xmm5, %xmm15 #18.41 | |
vmovd %xmm14, 160+trades(%rax) #18.41 | |
vmovd %xmm14, 352+trades(%rax) #18.41 | |
vmovd %xmm15, 116+trades(%rax) #18.41 | |
vpsrldq $4, %xmm15, %xmm14 #18.41 | |
vmovd %xmm15, 308+trades(%rax) #18.41 | |
vpand %xmm12, %xmm4, %xmm15 #28.10 | |
vmovd %xmm14, 164+trades(%rax) #18.41 | |
vmovd %xmm14, 356+trades(%rax) #18.41 | |
vpcmpeqq %xmm15, %xmm11, %xmm14 #28.16 | |
vpand %xmm12, %xmm3, %xmm15 #28.10 | |
vpcmpeqq %xmm15, %xmm11, %xmm15 #28.16 | |
vpshufb .L_2il0floatpacket.21(%rip), %xmm14, %xmm14 #28.16 | |
vpshufb .L_2il0floatpacket.22(%rip), %xmm15, %xmm15 #28.16 | |
vpor %xmm15, %xmm14, %xmm15 #28.16 | |
vpand %xmm12, %xmm2, %xmm14 #28.10 | |
vpcmpeqq %xmm14, %xmm11, %xmm14 #28.16 | |
vpshufb .L_2il0floatpacket.23(%rip), %xmm14, %xmm14 #28.16 | |
vpor %xmm14, %xmm15, %xmm14 #28.16 | |
vpand %xmm12, %xmm0, %xmm15 #28.10 | |
vpcmpeqq %xmm15, %xmm11, %xmm15 #28.16 | |
vpshufb %xmm8, %xmm15, %xmm15 #28.16 | |
vpor %xmm15, %xmm14, %xmm14 #28.16 | |
vpblendvb %xmm14, %xmm9, %xmm10, %xmm14 #31.18 | |
vmovd %xmm1, 16+trades(%rax) #18.41 | |
vmovd %xmm7, 20+trades(%rax) #18.41 | |
vmovdqu .L_2il0floatpacket.17(%rip), %xmm1 #18.41 | |
vmovdqu .L_2il0floatpacket.18(%rip), %xmm7 #18.41 | |
vpextrq $0, %xmm4, trades(%rax) #18.41 | |
vpextrq $1, %xmm4, 48+trades(%rax) #18.41 | |
vpextrq $0, %xmm3, 96+trades(%rax) #18.41 | |
vpextrq $1, %xmm3, 144+trades(%rax) #18.41 | |
vpextrq $0, %xmm2, 192+trades(%rax) #18.41 | |
vpextrq $1, %xmm2, 240+trades(%rax) #18.41 | |
vpextrq $0, %xmm0, 288+trades(%rax) #18.41 | |
vpextrq $1, %xmm0, 336+trades(%rax) #18.41 | |
vpextrq $0, %xmm12, 8+trades(%rax) #18.41 | |
vpextrq $1, %xmm12, 56+trades(%rax) #18.41 | |
vpextrq $0, %xmm12, 104+trades(%rax) #18.41 | |
vpextrq $1, %xmm12, 152+trades(%rax) #18.41 | |
vpextrq $0, %xmm12, 200+trades(%rax) #18.41 | |
vpextrq $1, %xmm12, 248+trades(%rax) #18.41 | |
vpextrq $0, %xmm12, 296+trades(%rax) #18.41 | |
vpextrq $1, %xmm12, 344+trades(%rax) #18.41 | |
vmovd %xmm6, 64+trades(%rax) #18.41 | |
vmovd %xmm1, 208+trades(%rax) #18.41 | |
vmovd %xmm6, 256+trades(%rax) #18.41 | |
vmovd %xmm5, 68+trades(%rax) #18.41 | |
vmovd %xmm7, 212+trades(%rax) #18.41 | |
vmovd %xmm5, 260+trades(%rax) #18.41 | |
vpextrq $0, %xmm4, 24+trades(%rax) #18.41 | |
vpextrq $1, %xmm4, 72+trades(%rax) #18.41 | |
vpextrq $0, %xmm3, 120+trades(%rax) #18.41 | |
vpextrq $1, %xmm3, 168+trades(%rax) #18.41 | |
vpextrq $0, %xmm2, 216+trades(%rax) #18.41 | |
vpextrq $1, %xmm2, 264+trades(%rax) #18.41 | |
vpextrq $0, %xmm0, 312+trades(%rax) #18.41 | |
vpextrq $1, %xmm0, 360+trades(%rax) #18.41 | |
vpextrq $0, %xmm4, 32+trades(%rax) #18.41 | |
vpextrq $1, %xmm4, 80+trades(%rax) #18.41 | |
vpextrq $0, %xmm3, 128+trades(%rax) #18.41 | |
vpextrq $1, %xmm3, 176+trades(%rax) #18.41 | |
vpextrq $0, %xmm2, 224+trades(%rax) #18.41 | |
vpextrq $1, %xmm2, 272+trades(%rax) #18.41 | |
vpextrq $0, %xmm0, 320+trades(%rax) #18.41 | |
vpextrq $1, %xmm0, 368+trades(%rax) #18.41 | |
vpextrb $0, %xmm14, 40+trades(%rax) #18.41 | |
vpextrb $1, %xmm14, 88+trades(%rax) #18.41 | |
vpextrb $2, %xmm14, 136+trades(%rax) #18.41 | |
vpextrb $3, %xmm14, 184+trades(%rax) #18.41 | |
vpextrb $4, %xmm14, 232+trades(%rax) #18.41 | |
vpextrb $5, %xmm14, 280+trades(%rax) #18.41 | |
vpextrb $6, %xmm14, 328+trades(%rax) #18.41 | |
vpextrb $7, %xmm14, 376+trades(%rax) #18.41 | |
addq $384, %rax #17.2 | |
vpaddq %xmm13, %xmm4, %xmm4 #18.41 | |
vpaddq %xmm13, %xmm3, %xmm3 #18.41 | |
vpaddq %xmm13, %xmm2, %xmm2 #18.41 | |
vpaddq %xmm13, %xmm0, %xmm0 #18.41 | |
cmpq $22200000, %rdx #17.2 | |
jb ..B1.4 # Prob 99% #17.2 | |
xorl %edx, %edx #51.2 | |
vpxor %xmm1, %xmm1, %xmm1 #48.15 | |
vpcmpeqd %xmm2, %xmm2, %xmm2 # | |
vmovdqu %xmm5, 64(%rsp) # | |
vmovdqa %xmm1, %xmm0 #49.16 | |
vmovdqu %xmm6, 80(%rsp) # | |
xorl %eax, %eax # | |
vmovdqu 48(%rsp), %xmm3 # | |
..B1.6: # Preds ..B1.6 ..B1.5 | |
vmovq 24+trades(%rax), %xmm5 #52.41 | |
addq $2, %rdx #51.2 | |
vmovq 32+trades(%rax), %xmm6 #52.41 | |
vpinsrq $1, 72+trades(%rax), %xmm5, %xmm14 #52.41 | |
vpinsrq $1, 80+trades(%rax), %xmm6, %xmm15 #52.41 | |
vpsrlq $32, %xmm14, %xmm10 #54.30 | |
movzbl 40+trades(%rax), %ecx #52.41 | |
vpsrlq $32, %xmm15, %xmm9 #54.30 | |
vpmuludq %xmm14, %xmm9, %xmm11 #54.30 | |
vpmuludq %xmm15, %xmm10, %xmm12 #54.30 | |
vpmuludq %xmm15, %xmm14, %xmm10 #54.30 | |
vpaddq %xmm12, %xmm11, %xmm13 #54.30 | |
vmovd %ecx, %xmm4 #52.41 | |
vpsllq $32, %xmm13, %xmm9 #54.30 | |
vpinsrb $1, 88+trades(%rax), %xmm4, %xmm7 #52.41 | |
addq $96, %rax #51.2 | |
vpaddq %xmm10, %xmm9, %xmm4 #54.30 | |
vpcmpeqb %xmm7, %xmm3, %xmm8 #53.22 | |
vpmovsxbq %xmm8, %xmm8 #53.22 | |
vpxor %xmm8, %xmm2, %xmm5 #53.22 | |
vpand %xmm8, %xmm4, %xmm11 #54.30 | |
vpand %xmm5, %xmm4, %xmm6 #56.31 | |
vpaddq %xmm11, %xmm1, %xmm1 #54.4 | |
vpaddq %xmm6, %xmm0, %xmm0 #56.4 | |
cmpq $22200000, %rdx #51.2 | |
jb ..B1.6 # Prob 99% #51.2 | |
xorl %edi, %edi #38.2 | |
lea (%rsp), %rsi #38.2 | |
vmovdqu %xmm3, 48(%rsp) # | |
vmovdqu %xmm0, 16(%rsp) #38.2 | |
vmovdqu %xmm1, 32(%rsp) #38.2 | |
call clock_gettime #38.2 | |
vcvtsi2sdq 8(%rsp), %xmm6, %xmm6 #61.2 | |
vcvtsi2sdq %r14, %xmm8, %xmm8 #61.2 | |
vcvtsi2sdq (%rsp), %xmm2, %xmm2 #61.2 | |
vcvtsi2sdq %r13, %xmm3, %xmm3 #61.2 | |
vmovsd .L_2il0floatpacket.26(%rip), %xmm7 #61.2 | |
movl $.L_2__STRING.0, %edi #61.2 | |
vmovapd %xmm7, %xmm9 #61.2 | |
movl %r12d, %esi #61.2 | |
vdivsd %xmm7, %xmm6, %xmm10 #61.2 | |
vdivsd %xmm9, %xmm8, %xmm11 #61.2 | |
vmovsd .L_2il0floatpacket.25(%rip), %xmm5 #61.2 | |
xorl %eax, %eax #61.2 | |
vmovdqu 32(%rsp), %xmm1 # | |
vsubsd %xmm3, %xmm2, %xmm4 #61.2 | |
vsubsd %xmm11, %xmm10, %xmm13 #61.2 | |
vmulsd %xmm5, %xmm4, %xmm12 #61.2 | |
vmovdqu 16(%rsp), %xmm0 # | |
vaddsd %xmm13, %xmm12, %xmm14 #61.2 | |
vcvttsd2si %xmm14, %edx #61.2 | |
vmovdqu %xmm0, 16(%rsp) #61.2 | |
vmovdqu %xmm1, 32(%rsp) #61.2 | |
call printf #61.2 | |
vmovdqu 32(%rsp), %xmm1 # | |
movl $.L_2__STRING.1, %edi #62.2 | |
vmovdqu 16(%rsp), %xmm0 # | |
xorl %eax, %eax #62.2 | |
vpsrldq $8, %xmm0, %xmm2 #49.16 | |
vpsrldq $8, %xmm1, %xmm3 #48.15 | |
vpaddq %xmm2, %xmm0, %xmm0 #49.16 | |
vpaddq %xmm3, %xmm1, %xmm1 #48.15 | |
vmovd %xmm0, %rdx #49.16 | |
vmovd %xmm1, %rsi #48.15 | |
call printf #62.2 | |
incl %r12d #66.2 | |
cmpl $5, %r12d #66.2 | |
jb ..B1.2 # Prob 80% #66.2 | |
xorl %eax, %eax #69.1 | |
addq $232, %rsp #69.1 | |
popq %r14 #69.1 | |
popq %r13 #69.1 | |
popq %r12 #69.1 | |
movq %rbp, %rsp #69.1 | |
popq %rbp #69.1 | |
ret #69.1 | |
L__routine_start__Z7getTimev_1: | |
getTime(): | |
subq $24, %rsp #36.17 | |
xorl %edi, %edi #38.2 | |
lea (%rsp), %rsi #38.2 | |
call clock_gettime #38.2 | |
vcvtsi2sdq 8(%rsp), %xmm2, %xmm2 #40.14 | |
vcvtsi2sdq (%rsp), %xmm1, %xmm1 #39.14 | |
vdivsd .L_2il0floatpacket.28(%rip), %xmm2, %xmm4 #41.24 | |
vmulsd .L_2il0floatpacket.27(%rip), %xmm1, %xmm3 #41.12 | |
vaddsd %xmm4, %xmm3, %xmm0 #41.24 | |
addq $24, %rsp #41.24 | |
ret #41.24 | |
L__routine_start__Z7perfRuni_2: | |
perfRun(int): | |
pushq %rbp #44.26 | |
movq %rsp, %rbp #44.26 | |
andq $-32, %rsp #44.26 | |
pushq %r14 #44.26 | |
subq $88, %rsp #44.26 | |
movl %edi, %r14d #44.26 | |
xorl %edi, %edi #38.2 | |
lea 56(%rsp), %rsi #38.2 | |
call clock_gettime #38.2 | |
vcvtsi2sdq 64(%rsp), %xmm1, %xmm1 #40.14 | |
vcvtsi2sdq 56(%rsp), %xmm0, %xmm0 #39.14 | |
vdivsd .L_2il0floatpacket.31(%rip), %xmm1, %xmm3 #41.24 | |
vmovsd .L_2il0floatpacket.30(%rip), %xmm12 #41.12 | |
xorl %edi, %edi #17.2 | |
vmulsd %xmm0, %xmm12, %xmm2 #41.12 | |
xorl %esi, %esi # | |
movl $1, %ecx # | |
movl $123, %edx # | |
movl $321, %eax # | |
vaddsd %xmm3, %xmm2, %xmm13 #41.24 | |
..B3.3: # Preds ..B3.3 ..B3.2 | |
movq %rcx, 8+trades(%rsi) #18.41 | |
lea (%rdi,%rdi), %r8 #20.3 | |
movq %r8, trades(%rsi) #18.41 | |
lea 1(,%rdi,2), %r9 #20.3 | |
incq %rdi #17.2 | |
movl %edx, 16+trades(%rsi) #18.41 | |
movl %eax, 20+trades(%rsi) #18.41 | |
movq %r8, 24+trades(%rsi) #18.41 | |
movq %r8, 32+trades(%rsi) #18.41 | |
movq %r9, 48+trades(%rsi) #18.41 | |
movq %rcx, 56+trades(%rsi) #18.41 | |
movl %edx, 64+trades(%rsi) #18.41 | |
movl %eax, 68+trades(%rsi) #18.41 | |
movq %r9, 72+trades(%rsi) #18.41 | |
movq %r9, 80+trades(%rsi) #18.41 | |
addq $96, %rsi #17.2 | |
cmpq $11100000, %rdi #17.2 | |
jb ..B3.3 # Prob 99% #17.2 | |
xorl %edx, %edx #17.2 | |
vmovdqu .L_2il0floatpacket.32(%rip), %xmm11 #17.2 | |
vpxor %xmm14, %xmm14, %xmm14 #28.16 | |
vmovdqu .L_2il0floatpacket.33(%rip), %xmm10 #17.2 | |
xorl %eax, %eax # | |
vmovdqu .L_2il0floatpacket.34(%rip), %xmm9 #17.2 | |
vmovdqu .L_2il0floatpacket.35(%rip), %xmm8 #17.2 | |
vmovdqu .L_2il0floatpacket.36(%rip), %xmm6 #17.2 | |
vmovdqu .L_2il0floatpacket.37(%rip), %xmm5 #28.10 | |
vmovups .L_2il0floatpacket.38(%rip), %xmm4 #31.18 | |
vmovups .L_2il0floatpacket.39(%rip), %xmm3 #29.18 | |
vmovdqu .L_2il0floatpacket.40(%rip), %xmm2 #28.16 | |
vmovdqu .L_2il0floatpacket.41(%rip), %xmm1 #28.16 | |
vmovdqu .L_2il0floatpacket.42(%rip), %xmm7 #28.16 | |
vmovdqu .L_2il0floatpacket.43(%rip), %xmm0 #28.16 | |
..B3.5: # Preds ..B3.5 ..B3.4 | |
vpand %xmm5, %xmm10, %xmm15 #28.10 | |
addq $8, %rdx #17.2 | |
vpcmpeqq %xmm15, %xmm14, %xmm12 #28.16 | |
vpand %xmm5, %xmm9, %xmm15 #28.10 | |
vpcmpeqq %xmm15, %xmm14, %xmm15 #28.16 | |
vpshufb %xmm2, %xmm12, %xmm12 #28.16 | |
vpaddq %xmm11, %xmm10, %xmm10 #18.41 | |
vpaddq %xmm11, %xmm9, %xmm9 #18.41 | |
vpshufb %xmm1, %xmm15, %xmm15 #28.16 | |
vpor %xmm15, %xmm12, %xmm15 #28.16 | |
vpand %xmm5, %xmm8, %xmm12 #28.10 | |
vpcmpeqq %xmm12, %xmm14, %xmm12 #28.16 | |
vpshufb %xmm7, %xmm12, %xmm12 #28.16 | |
vpaddq %xmm11, %xmm8, %xmm8 #18.41 | |
vpor %xmm12, %xmm15, %xmm12 #28.16 | |
vpand %xmm5, %xmm6, %xmm15 #28.10 | |
vpcmpeqq %xmm15, %xmm14, %xmm15 #28.16 | |
vpshufb %xmm0, %xmm15, %xmm15 #28.16 | |
vpaddq %xmm11, %xmm6, %xmm6 #18.41 | |
vpor %xmm15, %xmm12, %xmm12 #28.16 | |
vpblendvb %xmm12, %xmm3, %xmm4, %xmm12 #31.18 | |
vpextrb $0, %xmm12, 40+trades(%rax) #18.41 | |
vpextrb $1, %xmm12, 88+trades(%rax) #18.41 | |
vpextrb $2, %xmm12, 136+trades(%rax) #18.41 | |
vpextrb $3, %xmm12, 184+trades(%rax) #18.41 | |
vpextrb $4, %xmm12, 232+trades(%rax) #18.41 | |
vpextrb $5, %xmm12, 280+trades(%rax) #18.41 | |
vpextrb $6, %xmm12, 328+trades(%rax) #18.41 | |
vpextrb $7, %xmm12, 376+trades(%rax) #18.41 | |
addq $384, %rax #17.2 | |
cmpq $22200000, %rdx #17.2 | |
jb ..B3.5 # Prob 99% #17.2 | |
movl $1111638594, %eax #53.22 | |
xorl %edx, %edx #51.2 | |
vmovsd .L_2il0floatpacket.30(%rip), %xmm12 # | |
vpxor %xmm4, %xmm4, %xmm4 #49.16 | |
vpcmpeqd %xmm3, %xmm3, %xmm3 #53.22 | |
vmovd %eax, %xmm0 #53.22 | |
xorl %eax, %eax # | |
vpshufd $0, %xmm0, %xmm5 #53.22 | |
..B3.7: # Preds ..B3.7 ..B3.6 | |
vmovq 24+trades(%rax), %xmm7 #52.41 | |
addq $2, %rdx #51.2 | |
vmovq 32+trades(%rax), %xmm8 #52.41 | |
vpinsrq $1, 72+trades(%rax), %xmm7, %xmm2 #52.41 | |
vpinsrq $1, 80+trades(%rax), %xmm8, %xmm1 #52.41 | |
vpsrlq $32, %xmm2, %xmm11 #54.30 | |
movzbl 40+trades(%rax), %ecx #52.41 | |
vpsrlq $32, %xmm1, %xmm10 #54.30 | |
vpmuludq %xmm2, %xmm10, %xmm15 #54.30 | |
vmovd %ecx, %xmm6 #52.41 | |
vpinsrb $1, 88+trades(%rax), %xmm6, %xmm9 #52.41 | |
addq $96, %rax #51.2 | |
vpmuludq %xmm1, %xmm11, %xmm6 #54.30 | |
vpmuludq %xmm1, %xmm2, %xmm1 #54.30 | |
vpaddq %xmm6, %xmm15, %xmm7 #54.30 | |
vpsllq $32, %xmm7, %xmm8 #54.30 | |
vpcmpeqb %xmm9, %xmm5, %xmm0 #53.22 | |
vpaddq %xmm1, %xmm8, %xmm9 #54.30 | |
vpmovsxbq %xmm0, %xmm0 #53.22 | |
vpand %xmm0, %xmm9, %xmm2 #54.30 | |
vpxor %xmm0, %xmm3, %xmm0 #53.22 | |
vpand %xmm0, %xmm9, %xmm10 #56.31 | |
vpaddq %xmm2, %xmm14, %xmm14 #54.4 | |
vpaddq %xmm10, %xmm4, %xmm4 #56.4 | |
cmpq $22200000, %rdx #51.2 | |
jb ..B3.7 # Prob 99% #51.2 | |
xorl %edi, %edi #38.2 | |
lea (%rsp), %rsi #38.2 | |
vmovsd %xmm13, 48(%rsp) #38.2 | |
vmovdqu %xmm4, 16(%rsp) #38.2 | |
vmovdqu %xmm14, 32(%rsp) #38.2 | |
call clock_gettime #38.2 | |
vcvtsi2sdq 8(%rsp), %xmm1, %xmm1 #61.2 | |
vcvtsi2sdq (%rsp), %xmm0, %xmm0 #61.2 | |
vdivsd .L_2il0floatpacket.31(%rip), %xmm1, %xmm3 #61.2 | |
vmovsd .L_2il0floatpacket.30(%rip), %xmm12 # | |
movl $.L_2__STRING.0, %edi #61.2 | |
vmulsd %xmm0, %xmm12, %xmm2 #61.2 | |
movl %r14d, %esi #61.2 | |
vmovsd 48(%rsp), %xmm13 # | |
xorl %eax, %eax #61.2 | |
vmovdqu 32(%rsp), %xmm14 # | |
vaddsd %xmm3, %xmm2, %xmm5 #61.2 | |
vmovdqu 16(%rsp), %xmm4 # | |
vsubsd %xmm13, %xmm5, %xmm6 #61.2 | |
vcvttsd2si %xmm6, %edx #61.2 | |
vmovdqu %xmm4, 16(%rsp) #61.2 | |
vmovdqu %xmm14, 32(%rsp) #61.2 | |
call printf #61.2 | |
vmovdqu 32(%rsp), %xmm14 # | |
movl $.L_2__STRING.1, %edi #62.2 | |
vmovdqu 16(%rsp), %xmm4 # | |
xorl %eax, %eax #62.2 | |
vpsrldq $8, %xmm4, %xmm0 #49.16 | |
vpsrldq $8, %xmm14, %xmm2 #48.15 | |
vpaddq %xmm0, %xmm4, %xmm1 #49.16 | |
vpaddq %xmm2, %xmm14, %xmm3 #48.15 | |
vmovd %xmm1, %rdx #49.16 | |
vmovd %xmm3, %rsi #48.15 | |
call printf #62.2 | |
addq $88, %rsp #63.1 | |
popq %r14 #63.1 | |
movq %rbp, %rsp #63.1 | |
popq %rbp #63.1 | |
ret #63.1 | |
L__routine_start__Z10initTradesv_3: | |
initTrades(): | |
xorl %edi, %edi #17.2 | |
xorl %r8d, %r8d #17.2 | |
xorl %esi, %esi # | |
movl $1, %ecx # | |
movl $123, %edx # | |
movl $321, %eax # | |
..B4.2: # Preds ..B4.2 ..B4.1 | |
movq %rcx, 8+trades(%rsi) #18.41 | |
lea (%rdi,%rdi), %r9 #20.3 | |
movq %r9, trades(%rsi) #18.41 | |
lea 1(,%rdi,2), %r10 #20.3 | |
incq %rdi #17.2 | |
movl %edx, 16+trades(%rsi) #18.41 | |
movl %eax, 20+trades(%rsi) #18.41 | |
movq %r9, 24+trades(%rsi) #18.41 | |
movq %r9, 32+trades(%rsi) #18.41 | |
movq %r10, 48+trades(%rsi) #18.41 | |
movq %rcx, 56+trades(%rsi) #18.41 | |
movl %edx, 64+trades(%rsi) #18.41 | |
movl %eax, 68+trades(%rsi) #18.41 | |
movq %r10, 72+trades(%rsi) #18.41 | |
movq %r10, 80+trades(%rsi) #18.41 | |
addq $96, %rsi #17.2 | |
cmpq $11100000, %rdi #17.2 | |
jb ..B4.2 # Prob 99% #17.2 | |
vmovdqu .L_2il0floatpacket.44(%rip), %xmm15 #17.2 | |
movq %r8, %rax # | |
vmovdqu .L_2il0floatpacket.45(%rip), %xmm14 #17.2 | |
vpxor %xmm9, %xmm9, %xmm9 #28.16 | |
vmovdqu .L_2il0floatpacket.46(%rip), %xmm13 #17.2 | |
vmovdqu .L_2il0floatpacket.47(%rip), %xmm12 #17.2 | |
vmovdqu .L_2il0floatpacket.48(%rip), %xmm10 #17.2 | |
vmovdqu .L_2il0floatpacket.49(%rip), %xmm8 #28.10 | |
vmovups .L_2il0floatpacket.50(%rip), %xmm7 #31.18 | |
vmovups .L_2il0floatpacket.51(%rip), %xmm6 #29.18 | |
vmovdqu .L_2il0floatpacket.52(%rip), %xmm5 #28.16 | |
vmovdqu .L_2il0floatpacket.53(%rip), %xmm4 #28.16 | |
vmovdqu .L_2il0floatpacket.54(%rip), %xmm11 #28.16 | |
vmovdqu .L_2il0floatpacket.55(%rip), %xmm3 #28.16 | |
..B4.4: # Preds ..B4.4 ..B4.3 | |
vpand %xmm8, %xmm14, %xmm0 #28.10 | |
vpand %xmm8, %xmm13, %xmm1 #28.10 | |
vpcmpeqq %xmm0, %xmm9, %xmm0 #28.16 | |
addq $8, %r8 #17.2 | |
vpshufb %xmm5, %xmm0, %xmm2 #28.16 | |
vpaddq %xmm15, %xmm14, %xmm14 #18.41 | |
vpaddq %xmm15, %xmm13, %xmm13 #18.41 | |
vpcmpeqq %xmm1, %xmm9, %xmm0 #28.16 | |
vpshufb %xmm4, %xmm0, %xmm1 #28.16 | |
vpor %xmm1, %xmm2, %xmm1 #28.16 | |
vpand %xmm8, %xmm12, %xmm2 #28.10 | |
vpcmpeqq %xmm2, %xmm9, %xmm0 #28.16 | |
vpshufb %xmm11, %xmm0, %xmm2 #28.16 | |
vpaddq %xmm15, %xmm12, %xmm12 #18.41 | |
vpor %xmm2, %xmm1, %xmm0 #28.16 | |
vpand %xmm8, %xmm10, %xmm1 #28.10 | |
vpcmpeqq %xmm1, %xmm9, %xmm1 #28.16 | |
vpshufb %xmm3, %xmm1, %xmm2 #28.16 | |
vpaddq %xmm15, %xmm10, %xmm10 #18.41 | |
vpor %xmm2, %xmm0, %xmm0 #28.16 | |
vpblendvb %xmm0, %xmm6, %xmm7, %xmm0 #31.18 | |
vpextrb $0, %xmm0, 40+trades(%rax) #18.41 | |
vpextrb $1, %xmm0, 88+trades(%rax) #18.41 | |
vpextrb $2, %xmm0, 136+trades(%rax) #18.41 | |
vpextrb $3, %xmm0, 184+trades(%rax) #18.41 | |
vpextrb $4, %xmm0, 232+trades(%rax) #18.41 | |
vpextrb $5, %xmm0, 280+trades(%rax) #18.41 | |
vpextrb $6, %xmm0, 328+trades(%rax) #18.41 | |
vpextrb $7, %xmm0, 376+trades(%rax) #18.41 | |
addq $384, %rax #17.2 | |
cmpq $22200000, %r8 #17.2 | |
jb ..B4.4 # Prob 99% #17.2 | |
ret #34.1 | |
trades: | |
.L_2il0floatpacket.11: | |
.long 0x00000008,0x00000000,0x00000008,0x00000000 | |
.L_2il0floatpacket.12: | |
.long 0x00000000,0x00000000,0x00000001,0x00000000 | |
.L_2il0floatpacket.13: | |
.long 0x00000002,0x00000000,0x00000003,0x00000000 | |
.L_2il0floatpacket.14: | |
.long 0x00000004,0x00000000,0x00000005,0x00000000 | |
.L_2il0floatpacket.15: | |
.long 0x00000006,0x00000000,0x00000007,0x00000000 | |
.L_2il0floatpacket.16: | |
.long 0x00000001,0x00000000,0x00000001,0x00000000 | |
.L_2il0floatpacket.17: | |
.long 0x0000007b,0x0000007b,0x0000007b,0x0000007b | |
.L_2il0floatpacket.18: | |
.long 0x00000141,0x00000141,0x00000141,0x00000141 | |
.L_2il0floatpacket.19: | |
.long 0x53535353,0x53535353,0x53535353,0x53535353 | |
.L_2il0floatpacket.20: | |
.long 0x42424242,0x42424242,0x42424242,0x42424242 | |
.L_2il0floatpacket.21: | |
.long 0xffff0800,0xffffffff,0xffffffff,0xffffffff | |
.L_2il0floatpacket.22: | |
.long 0x0800ffff,0xffffffff,0xffffffff,0xffffffff | |
.L_2il0floatpacket.23: | |
.long 0xffffffff,0xffff0800,0xffffffff,0xffffffff | |
.L_2il0floatpacket.24: | |
.long 0xffffffff,0x0800ffff,0xffffffff,0xffffffff | |
.L_2il0floatpacket.32: | |
.long 0x00000008,0x00000000,0x00000008,0x00000000 | |
.L_2il0floatpacket.33: | |
.long 0x00000000,0x00000000,0x00000001,0x00000000 | |
.L_2il0floatpacket.34: | |
.long 0x00000002,0x00000000,0x00000003,0x00000000 | |
.L_2il0floatpacket.35: | |
.long 0x00000004,0x00000000,0x00000005,0x00000000 | |
.L_2il0floatpacket.36: | |
.long 0x00000006,0x00000000,0x00000007,0x00000000 | |
.L_2il0floatpacket.37: | |
.long 0x00000001,0x00000000,0x00000001,0x00000000 | |
.L_2il0floatpacket.38: | |
.long 0x53535353,0x53535353,0x53535353,0x53535353 | |
.L_2il0floatpacket.39: | |
.long 0x42424242,0x42424242,0x42424242,0x42424242 | |
.L_2il0floatpacket.40: | |
.long 0xffff0800,0xffffffff,0xffffffff,0xffffffff | |
.L_2il0floatpacket.41: | |
.long 0x0800ffff,0xffffffff,0xffffffff,0xffffffff | |
.L_2il0floatpacket.42: | |
.long 0xffffffff,0xffff0800,0xffffffff,0xffffffff | |
.L_2il0floatpacket.43: | |
.long 0xffffffff,0x0800ffff,0xffffffff,0xffffffff | |
.L_2il0floatpacket.44: | |
.long 0x00000008,0x00000000,0x00000008,0x00000000 | |
.L_2il0floatpacket.45: | |
.long 0x00000000,0x00000000,0x00000001,0x00000000 | |
.L_2il0floatpacket.46: | |
.long 0x00000002,0x00000000,0x00000003,0x00000000 | |
.L_2il0floatpacket.47: | |
.long 0x00000004,0x00000000,0x00000005,0x00000000 | |
.L_2il0floatpacket.48: | |
.long 0x00000006,0x00000000,0x00000007,0x00000000 | |
.L_2il0floatpacket.49: | |
.long 0x00000001,0x00000000,0x00000001,0x00000000 | |
.L_2il0floatpacket.50: | |
.long 0x53535353,0x53535353,0x53535353,0x53535353 | |
.L_2il0floatpacket.51: | |
.long 0x42424242,0x42424242,0x42424242,0x42424242 | |
.L_2il0floatpacket.52: | |
.long 0xffff0800,0xffffffff,0xffffffff,0xffffffff | |
.L_2il0floatpacket.53: | |
.long 0x0800ffff,0xffffffff,0xffffffff,0xffffffff | |
.L_2il0floatpacket.54: | |
.long 0xffffffff,0xffff0800,0xffffffff,0xffffffff | |
.L_2il0floatpacket.55: | |
.long 0xffffffff,0x0800ffff,0xffffffff,0xffffffff | |
.L_2il0floatpacket.25: | |
.long 0x00000000,0x408f4000 | |
.L_2il0floatpacket.26: | |
.long 0x00000000,0x412e8480 | |
.L_2il0floatpacket.27: | |
.long 0x00000000,0x408f4000 | |
.L_2il0floatpacket.28: | |
.long 0x00000000,0x412e8480 | |
.L_2il0floatpacket.30: | |
.long 0x00000000,0x408f4000 | |
.L_2il0floatpacket.31: | |
.long 0x00000000,0x412e8480 | |
.L_2__STRING.0: | |
.byte 37 | |
.byte 100 | |
.byte 32 | |
.byte 45 | |
.byte 32 | |
.byte 100 | |
.byte 117 | |
.byte 114 | |
.byte 97 | |
.byte 116 | |
.byte 105 | |
.byte 111 | |
.byte 110 | |
.byte 32 | |
.byte 37 | |
.byte 100 | |
.byte 32 | |
.byte 109 | |
.byte 115 | |
.byte 10 | |
.byte 0 | |
.L_2__STRING.1: | |
.byte 98 | |
.byte 117 | |
.byte 121 | |
.byte 67 | |
.byte 111 | |
.byte 115 | |
.byte 116 | |
.byte 32 | |
.byte 61 | |
.byte 32 | |
.byte 37 | |
.byte 108 | |
.byte 100 | |
.byte 32 | |
.byte 115 | |
.byte 101 | |
.byte 108 | |
.byte 108 | |
.byte 67 | |
.byte 111 | |
.byte 115 | |
.byte 116 | |
.byte 32 | |
.byte 61 | |
.byte 32 | |
.byte 37 | |
.byte 108 | |
.byte 100 | |
.byte 10 | |
.byte 0 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment