/* 
 * Command line: opannotate --source --assembly /home/krzysiek/tmp/bp/raid-nonoptimized 
 * 
 * Interpretation of command line:
 * Output annotated assembly listing with samples
 * 
 * CPU: P4 / Xeon, speed 2800.67 MHz (estimated)
 * Counted GLOBAL_POWER_EVENTS events (time during which processor is not stopped) with a unit mask of 0x01 (mandatory) count 100000
 * Counted BSQ_CACHE_REFERENCE events (cache references seen by the bus unit) with a unit mask of 0x300 (multiple flags) count 3000
 */
                               :
                               :/home/krzysiek/tmp/bp/raid-nonoptimized:     file format elf32-i386
                               :
                               :Disassembly of section .init:
                               :Disassembly of section .plt:
                               :Disassembly of section .text:
                               :
08048430 <main>: /* main total: 134303 99.9993     9 100.000 */
                               :#include <stdio.h>
                               :
                               :int main(int argc, char **argv)
                               : 8048430:	push   %ebp
                               : 8048431:	mov    %esp,%ebp
                               : 8048433:	sub    $0x28,%esp
                               : 8048436:	and    $0xfffffff0,%esp
                               : 8048439:	mov    $0x0,%eax
                               : 804843e:	add    $0xf,%eax
                               : 8048441:	add    $0xf,%eax
                               : 8048444:	shr    $0x4,%eax
                               : 8048447:	shl    $0x4,%eax
                               : 804844a:	sub    %eax,%esp
                               :{
                               :  int count = 50000000;
                               : 804844c:	movl   $0x2faf080,0xffffffec(%ebp)
                               :  int i;
                               :  
                               :  char *source_buffer1 = new char[count];
                               : 8048453:	mov    0xffffffec(%ebp),%eax
                               : 8048456:	mov    %eax,(%esp)
                               : 8048459:	call   8048360 <_Znaj@plt>
                               : 804845e:	mov    %eax,0xfffffff4(%ebp)
                               :  char *source_buffer2 = new char[count];
                               : 8048461:	mov    0xffffffec(%ebp),%eax
                               : 8048464:	mov    %eax,(%esp)
                               : 8048467:	call   8048360 <_Znaj@plt>
                               : 804846c:	mov    %eax,0xfffffff8(%ebp)
                               :  char *destination_buffer = new char[count];
                               : 804846f:	mov    0xffffffec(%ebp),%eax
                               : 8048472:	mov    %eax,(%esp)
                               : 8048475:	call   8048360 <_Znaj@plt>
                               : 804847a:	mov    %eax,0xfffffffc(%ebp)
                               :  
                               :  
                               :  for (i=1; i < count; ++i)
                               : 804847d:	movl   $0x1,0xfffffff0(%ebp)
                               : 8048484:	jmp    80484aa <main+0x7a>
                               :  {
                               :    destination_buffer[i] = source_buffer1[i] ^ source_buffer2[i];
    63  0.0469     0       0   : 8048486:	mov    0xfffffff0(%ebp),%eax
    45  0.0335     0       0   : 8048489:	mov    %eax,%ecx
     1 7.4e-04     0       0   : 804848b:	add    0xfffffffc(%ebp),%ecx
    51  0.0380     0       0   : 804848e:	mov    0xfffffff0(%ebp),%eax
                               : 8048491:	add    0xfffffff4(%ebp),%eax
    40  0.0298     0       0   : 8048494:	movzbl (%eax),%edx
  1606  1.1958     0       0   : 8048497:	mov    0xfffffff0(%ebp),%eax
    51  0.0380     1 11.1111   : 804849a:	add    0xfffffff8(%ebp),%eax
     4  0.0030     0       0   : 804849d:	movzbl (%eax),%eax
132051 98.3225     8 88.8889   : 80484a0:	xor    %dl,%al
   194  0.1444     0       0   : 80484a2:	mov    %al,(%ecx)
    36  0.0268     0       0   : 80484a4:	lea    0xfffffff0(%ebp),%eax
    57  0.0424     0       0   : 80484a7:	addl   $0x1,(%eax)
    62  0.0462     0       0   : 80484aa:	mov    0xfffffff0(%ebp),%eax
    42  0.0313     0       0   : 80484ad:	cmp    0xffffffec(%ebp),%eax
                               : 80484b0:	jl     8048486 <main+0x56>
                               :  }
                               :  
                               :  return 0;
                               : 80484b2:	mov    $0x0,%eax
                               :}
                               : 80484b7:	leave  
                               : 80484b8:	ret    
                               : 80484b9:	nop    
                               : 80484ba:	nop    
                               : 80484bb:	nop    
                               :Disassembly of section .fini:
/* 
 * Command line: opannotate --source --assembly /home/krzysiek/tmp/bp/raid-nonoptimized 
 * 
 * Interpretation of command line:
 * Output annotated assembly listing with samples
 * 
 * CPU: P4 / Xeon, speed 2800.67 MHz (estimated)
 * Counted GLOBAL_POWER_EVENTS events (time during which processor is not stopped) with a unit mask of 0x01 (mandatory) count 100000
 * Counted BSQ_CACHE_REFERENCE events (cache references seen by the bus unit) with a unit mask of 0x300 (multiple flags) count 3000
 */