// File: UCBASiCS[P]SPRIGHT/src/spright.cpp
// Function: SPRIGHT::displayResults() const
void SPRIGHT::displayResults() const
{

    if ( config->needToCountSamples() )
    {
        std::cout << std::endl << "<===== NUMBER OF SAMPLES =====>" << std::endl << frontEnd->getUsedSamplesNb() << " -> used samples" << std::endl;
        std::cout << std::setprecision(3) << frontEnd->getUsedSamplesNb()/((double) config->getSignalLengthOriginal())*100 << "\% samples touched" << std::endl;
    }
    
    std::cout << std::endl << "<===== AVERAGE TIME (in seconds) =====>" << std::endl;
    displayExecutionTime(chrono->average("FrontEnd"), chrono->average("BackEnd"), chrono->average("Global"));
    output->displayGlobalResults();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x110, %rsp            # imm = 0x110
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0xa0(%rbp)
movq (%rax), %rdi
callq 0xec70
testb $0x1, %al
jne 0x1e97b
jmp 0x1ea8b
movq 0x11646(%rip), %rdi     # 0x2ffc8
movq 0x11627(%rip), %rsi     # 0x2ffb0
callq 0x42f0
movq %rax, %rdi
leaq 0x2606(%rip), %rsi      # 0x20f9e
callq 0x42b0
movq %rax, %rdi
movq 0x11609(%rip), %rsi     # 0x2ffb0
callq 0x42f0
movq %rax, %rcx
movq -0xa0(%rbp), %rax
movq %rcx, -0xb8(%rbp)
movq 0x30(%rax), %rdi
callq 0x1bb20
movq -0xb8(%rbp), %rdi
movl %eax, %esi
callq 0x4520
movq %rax, %rdi
leaq 0x25e0(%rip), %rsi      # 0x20fbe
callq 0x42b0
movq %rax, %rdi
movq 0x115c3(%rip), %rsi     # 0x2ffb0
callq 0x42f0
movl $0x3, %edi
callq 0x17270
movl %eax, -0xc(%rbp)
movl -0xc(%rbp), %esi
movq 0x115bf(%rip), %rdi     # 0x2ffc8
callq 0x44a0
movq %rax, %rcx
movq -0xa0(%rbp), %rax
movq %rcx, -0xa8(%rbp)
movq 0x30(%rax), %rdi
callq 0x1bb20
movl %eax, %ecx
movq -0xa0(%rbp), %rax
cvtsi2sd %ecx, %xmm0
movsd %xmm0, -0xb0(%rbp)
movq (%rax), %rdi
callq 0xf890
movsd -0xb0(%rbp), %xmm0
movq -0xa8(%rbp), %rdi
cvtsi2sd %eax, %xmm1
divsd %xmm1, %xmm0
movsd 0x22a4(%rip), %xmm1     # 0x20d08
mulsd %xmm1, %xmm0
callq 0x45b0
movq %rax, %rdi
leaq 0x2558(%rip), %rsi      # 0x20fcf
callq 0x42b0
movq %rax, %rdi
movq 0x1152a(%rip), %rsi     # 0x2ffb0
callq 0x42f0
movq 0x11536(%rip), %rdi     # 0x2ffc8
movq 0x11517(%rip), %rsi     # 0x2ffb0
movq %rsi, -0xd0(%rbp)
callq 0x42f0
movq %rax, %rdi
leaq 0x2532(%rip), %rsi      # 0x20fe1
callq 0x42b0
movq -0xd0(%rbp), %rsi
movq %rax, %rdi
callq 0x42f0
movq -0xa0(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0xc8(%rbp)
leaq -0x31(%rbp), %rdi
movq %rdi, -0xc0(%rbp)
callq 0x4550
movq -0xc0(%rbp), %rdx
leaq 0x240d(%rip), %rsi      # 0x20f00
leaq -0x30(%rbp), %rdi
callq 0x5a20
jmp 0x1eafe
movq -0xc8(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0xc4f0
movsd %xmm0, -0xd8(%rbp)
jmp 0x1eb18
movq -0xa0(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0xe8(%rbp)
leaq -0x69(%rbp), %rdi
movq %rdi, -0xe0(%rbp)
callq 0x4550
movq -0xe0(%rbp), %rdx
leaq 0x14d4(%rip), %rsi      # 0x2001c
leaq -0x68(%rbp), %rdi
callq 0x5a20
jmp 0x1eb53
movq -0xe8(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0xc4f0
movsd %xmm0, -0xf0(%rbp)
jmp 0x1eb6d
movq -0xa0(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x100(%rbp)
leaq -0x91(%rbp), %rdi
movq %rdi, -0xf8(%rbp)
callq 0x4550
movq -0xf8(%rbp), %rdx
leaq 0x23f7(%rip), %rsi      # 0x20f97
leaq -0x90(%rbp), %rdi
callq 0x5a20
jmp 0x1ebae
movq -0x100(%rbp), %rdi
leaq -0x90(%rbp), %rsi
callq 0xc4f0
movsd %xmm0, -0x108(%rbp)
jmp 0x1ebcb
movsd -0x108(%rbp), %xmm2
movsd -0xf0(%rbp), %xmm1
movsd -0xd8(%rbp), %xmm0
movq -0xa0(%rbp), %rdi
callq 0x1ece0
jmp 0x1ebf1
leaq -0x90(%rbp), %rdi
callq 0x4180
leaq -0x91(%rbp), %rdi
callq 0x4310
leaq -0x68(%rbp), %rdi
callq 0x4180
leaq -0x69(%rbp), %rdi
callq 0x4310
leaq -0x30(%rbp), %rdi
callq 0x4180
leaq -0x31(%rbp), %rdi
callq 0x4310
movq -0xa0(%rbp), %rax
movq 0x18(%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
addq $0x110, %rsp            # imm = 0x110
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x1eccc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x1ecc3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x1ecba
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x1ecb1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x1eca5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x90(%rbp), %rdi
callq 0x4180
leaq -0x91(%rbp), %rdi
callq 0x4310
leaq -0x68(%rbp), %rdi
callq 0x4180
leaq -0x69(%rbp), %rdi
callq 0x4310
leaq -0x30(%rbp), %rdi
callq 0x4180
leaq -0x31(%rbp), %rdi
callq 0x4310
movq -0x40(%rbp), %rdi
callq 0x4540
nop