/* 
 * Command line: opannotate --assembly ./branch-prediction 
 * 
 * Interpretation of command line:
 * Output annotated assembly listing with samples
 * 
 * CPU: P4 / Xeon, speed 2593.62 MHz (estimated)
 * Counted BRANCH_RETIRED events (retired branches) with a unit mask of 0x08 (branch taken mispredicted) count 3000
 */
               :
               :/root/programy/branch-prediction:     file format elf32-i386
               :
               :Disassembly of section .init:
               :Disassembly of section .plt:
               :Disassembly of section .text:
               :
080484b4 <main>: /* main total:  83523 100.000 */
               : 80484b4:	lea    0x4(%esp),%ecx
               : 80484b8:	and    $0xfffffff0,%esp
               : 80484bb:	pushl  -0x4(%ecx)
               : 80484be:	push   %ebp
               : 80484bf:	mov    %esp,%ebp
               : 80484c1:	push   %ecx
               : 80484c2:	sub    $0x34,%esp
               : 80484c5:	movl   $0x3b9aca00,-0x18(%ebp)
               : 80484cc:	movl   $0x7,-0x10(%ebp)
               : 80484d3:	movl   $0x0,-0xc(%ebp)
               : 80484da:	movl   $0x0,-0x8(%ebp)
               : 80484e1:	movl   $0x1,-0x14(%ebp)
               : 80484e8:	jmp    8048509 <main+0x55>
               : 80484ea:	call   80483dc <rand@plt>
               : 80484ef:	and    $0x1,%eax
     1  0.0012 : 80484f2:	test   %eax,%eax
               : 80484f4:	sete   %al
               : 80484f7:	test   %al,%al
               : 80484f9:	je     8048501 <main+0x4d>
               : 80484fb:	addl   $0x1,-0xc(%ebp)
               : 80484ff:	jmp    8048505 <main+0x51>
               : 8048501:	addl   $0x1,-0x8(%ebp)
 83518 99.9940 : 8048505:	addl   $0x1,-0x14(%ebp)
     4  0.0048 : 8048509:	mov    -0x14(%ebp),%eax
               : 804850c:	cmp    -0x18(%ebp),%eax
               : 804850f:	jl     80484ea <main+0x36>
               : 8048511:	mov    -0x8(%ebp),%eax
               : 8048514:	mov    %eax,0x8(%esp)
               : 8048518:	mov    -0xc(%ebp),%eax
               : 804851b:	mov    %eax,0x4(%esp)
               : 804851f:	movl   $0x8048600,(%esp)
               : 8048526:	call   80483cc <printf@plt>
               : 804852b:	mov    $0x0,%eax
               : 8048530:	add    $0x34,%esp
               : 8048533:	pop    %ecx
               : 8048534:	pop    %ebp
               : 8048535:	lea    -0x4(%ecx),%esp
               : 8048538:	ret    
               : 8048539:	nop    
               : 804853a:	nop    
               : 804853b:	nop    
               : 804853c:	nop    
               : 804853d:	nop    
               : 804853e:	nop    
               : 804853f:	nop    
               :Disassembly of section .fini:
