/* 
 * 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 0x04 (branch taken predicted) 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: 745945 97.5486 */
               : 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>
 12831  1.6779 : 80484ea:	call   80483dc <rand@plt>
     4 5.2e-04 : 80484ef:	and    $0x1,%eax
   214  0.0280 : 80484f2:	test   %eax,%eax
 10268  1.3428 : 80484f4:	sete   %al
   239  0.0313 : 80484f7:	test   %al,%al
               : 80484f9:	je     8048501 <main+0x4d>
     5 6.5e-04 : 80484fb:	addl   $0x1,-0xc(%ebp)
318786 41.6882 : 80484ff:	jmp    8048505 <main+0x51>
     4 5.2e-04 : 8048501:	addl   $0x1,-0x8(%ebp)
319942 41.8394 : 8048505:	addl   $0x1,-0x14(%ebp)
  2544  0.3327 : 8048509:	mov    -0x14(%ebp),%eax
 56878  7.4380 : 804850c:	cmp    -0x18(%ebp),%eax
 24230  3.1686 : 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:
               :
               :/root/programy/branch-prediction:     file format elf32-i386
               :
               :Disassembly of section .init:
               :Disassembly of section .plt:
               :
0804839c <__gmon_start__@plt-0x10>: /* .plt total:  18746  2.4514 */
               : 804839c:	pushl  0x8049770
               : 80483a2:	jmp    *0x8049774
               : 80483a8:	add    %al,(%eax)
               :	...
               :
