Unterschied zwischen parallel + for getrennt und zusammen --- a5.asm 2012-05-07 22:07:15.000000000 +0200 +++ ../immortal.asm 2012-05-07 22:20:47.000000000 +0200 @@ -73,2 +72,0 @@ - xorl %r13d, %r13d # sum - .cfi_offset 13, -16 @@ -78,0 +77 @@ + .cfi_offset 13, -16 @@ -85 +84 @@ - movl 20(%rdi), %ebx # .halfway, D.28120 + movl 16(%rdi), %ebx # .halfway, D.28120 @@ -90,0 +90 @@ + xorl %esi, %esi # sum @@ -94 +94 @@ - movl %ebx, %r8d # D.28120, D.28132 + movl %ebx, %r9d # D.28120, D.28132 @@ -96,6 +96,6 @@ - movl $1, %r10d #, tmp83 - cmovbe %edx, %r8d # m,, D.28132 - movq (%r12), %rsi # .a, pretmp.315 - movl 16(%r12), %r11d # .digits, pretmp.317 - leal (%rbp,%rax), %r9d #, ivtmp.352 - subl %ebp, %r10d # D.28122, tmp83 + movl $1, %r11d #, tmp83 + cmovbe %edx, %r9d # m,, D.28132 + movq 8(%r12), %rdi # .a, pretmp.315 + movl 20(%r12), %r13d # .digits, pretmp.317 + leal (%rbp,%rax), %r10d #, ivtmp.352 + subl %ebp, %r11d # D.28122, tmp83 @@ -105,2 +105,2 @@ - movl %r11d, %ecx # pretmp.317, ivtmp.341 - incl %r8d # D.28134 + movl %r13d, %ecx # pretmp.317, ivtmp.341 + incl %r9d # D.28134 @@ -112,3 +112,3 @@ - mov %edx, %edi # m, m - movzbl (%rsi,%rax), %eax #* ivtmp.341, tmp77 - movzbl (%rsi,%rdi), %edi #* m, tmp76 + mov %edx, %r8d # m, m + movzbl (%rdi,%rax), %eax #* ivtmp.341, tmp77 + movzbl (%rdi,%r8), %r8d #* m, tmp76 @@ -116 +116 @@ - imull %edi, %eax # tmp76, tmp77 + imull %r8d, %eax # tmp76, tmp77 @@ -119,2 +119,2 @@ - addq %rax, %r13 # tmp78, sum - cmpl %edx, %r8d # m, D.28134 + addq %rax, %rsi # tmp78, sum + cmpl %edx, %r9d # m, D.28134 @@ -122,2 +122,2 @@ - addl %ebp, %r9d # D.28122, ivtmp.352 - movl %r9d, %eax # ivtmp.352, tmp79 + addl %ebp, %r10d # D.28122, ivtmp.352 + movl %r10d, %eax # ivtmp.352, tmp79 @@ -127 +127 @@ - leal (%r10,%r9), %edx #, m + leal (%r11,%r10), %edx #, m @@ -129,2 +129,2 @@ - movl %edx, %r8d # m, D.28132 - cmovbe %ebx, %r8d # D.28120,, D.28132 + movl %edx, %r9d # m, D.28132 + cmovbe %ebx, %r9d # D.28120,, D.28132 @@ -135,2 +135 @@ - call GOMP_barrier # - lock addq %r13, 8(%r12) # sum, + lock addq %rsi, (%r12) # sum,* .omp_data_i @@ -1162,4 +1161,3 @@ - movq %r13, 4176(%rsp) # a, .omp_data_o.176.a - movl %edi, 4192(%rsp) #, .omp_data_o.176.digits - movl %edi, %eax #, tmp630 - movq $0, 4184(%rsp) #, .omp_data_o.176.sum + movq %r13, 4184(%rsp) # a, .omp_data_o.176.a + movl 36(%rsp), %eax # %sfp, tmp630 + movl %edi, 4196(%rsp) #, .omp_data_o.176.digits @@ -1168 +1166,2 @@ - movl %eax, 4196(%rsp) # tmp630, .omp_data_o.176.halfway + movl %eax, 4192(%rsp) # tmp630, .omp_data_o.176.halfway + movq $0, 4176(%rsp) #, .omp_data_o.176.sum @@ -1173,2 +1172,2 @@ - movl 4192(%rsp), %eax # .omp_data_o.176.digits, - movq 4176(%rsp), %r13 # .omp_data_o.176.a, a + movl 4196(%rsp), %eax # .omp_data_o.176.digits, + movq 4184(%rsp), %r13 # .omp_data_o.176.a, a @@ -1176 +1175 @@ - movq 4184(%rsp), %rax # .omp_data_o.176.sum, .omp_data_o.176.sum + movq 4176(%rsp), %rax # .omp_data_o.176.sum, .omp_data_o.176.sum