// File: /workspace/github_cpp_makefile_star2_O3/MUST-Quick-Fry[P]Process-Scheduler/scheduler.cpp
// Function: Project::Scheduler::Scheduler(char*, char*)
Scheduler::Scheduler(char *f, char *p) : policyInfo(p)
{
    string tmp = Utils::readFile(f);
    normalizeCheck(tmp);
    splitToken(tmp);
    job_num = job_queue.size();
    choosePolicy();
    //sort(job_queue.begin(),job_queue.end());
    //schedulerDrive();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xf8, %rsp
movq %rsi, %r15
movq %rdi, %rbx
leaq -0x110(%rbp), %rax
movq %rdx, %rsi
movq %rax, %rdx
callq 0x20e0
leaq -0x100(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0xb7b0(%rip), %rsi      # 0x101f0
leaq 0xb7ad(%rip), %rdx      # 0x101f4
leaq -0x110(%rbp), %r14
movq %r14, %rdi
callq 0xcc8c
leaq -0xe8(%rbp), %r12
movl $0x0, -0x8(%r12)
leaq -0xd8(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0xb77d(%rip), %rsi      # 0x101f5
leaq 0xb77a(%rip), %rdx      # 0x101f9
movq %r12, %rdi
callq 0xcc8c
leaq -0xc0(%rbp), %r12
movl $0x1, -0x8(%r12)
leaq -0xb0(%rbp), %rax
movq %rax, -0x10(%rax)
leaq 0xb751(%rip), %rsi      # 0x101fa
leaq 0xb74e(%rip), %rdx      # 0x101fe
movq %r12, %rdi
callq 0xcc8c
leaq -0x98(%rbp), %r12
movl $0x2, -0x8(%r12)
leaq -0x88(%rbp), %r13
movq %r13, -0x10(%r13)
leaq 0xb725(%rip), %rsi      # 0x101ff
leaq 0xb720(%rip), %rdx      # 0x10201
movq %r12, %rdi
callq 0xcc8c
leaq 0x20(%rbx), %r14
leaq -0x70(%rbp), %rdx
movl $0x3, -0x8(%rdx)
leaq -0x29(%rbp), %rax
movq %rax, (%rsp)
leaq -0x110(%rbp), %rsi
leaq -0x2b(%rbp), %r8
leaq -0x2a(%rbp), %r9
movq %r14, %rdi
xorl %ecx, %ecx
callq 0xce88
leaq -0x88(%rbp), %r12
xorl %r13d, %r13d
movq -0x98(%rbp,%r13), %rdi
leaq (%r12,%r13), %rax
cmpq %rdi, %rax
je 0x4b39
callq 0x2250
addq $-0x28, %r13
cmpq $-0xa0, %r13
jne 0x4b23
xorps %xmm0, %xmm0
movups %xmm0, 0x60(%rbx)
movq $0x0, 0x70(%rbx)
leaq -0x110(%rbp), %rdi
movq %r15, %rsi
callq 0x305c
leaq -0x60(%rbp), %r12
movq %r12, -0x10(%r12)
movq -0x110(%rbp), %rsi
movq -0x108(%rbp), %rdx
addq %rsi, %rdx
leaq -0x70(%rbp), %rdi
callq 0x37e4
leaq -0x70(%rbp), %rsi
callq 0x4cda
movq -0x70(%rbp), %rdi
cmpq %r12, %rdi
je 0x4b9e
callq 0x2250
leaq -0x40(%rbp), %r12
movq %r12, -0x10(%r12)
movq -0x110(%rbp), %rsi
movq -0x108(%rbp), %rdx
addq %rsi, %rdx
leaq -0x50(%rbp), %rdi
callq 0x37e4
leaq -0x50(%rbp), %rsi
callq 0x4de6
movq -0x50(%rbp), %rdi
cmpq %r12, %rdi
je 0x4bd8
callq 0x2250
movq 0x10c59(%rip), %rax     # 0x15838
subq 0x10c4a(%rip), %rax     # 0x15830
shrq $0x3, %rax
imull $0xba2e8ba3, %eax, %eax # imm = 0xBA2E8BA3
movl %eax, 0x58(%rbx)
movq %rbx, %rdi
callq 0x510c
movq -0x110(%rbp), %rdi
leaq -0x100(%rbp), %rax
cmpq %rax, %rdi
je 0x4c13
callq 0x2250
addq $0xf8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %r15
movq -0x50(%rbp), %rdi
jmp 0x4c35
movq %rax, %r15
movq -0x70(%rbp), %rdi
cmpq %r12, %rdi
je 0x4c98
callq 0x2250
jmp 0x4c98
movq %rax, %r15
jmp 0x4cb0
movq %rax, %r15
movq $-0xa0, %r14
movq -0x10(%r13), %rdi
cmpq %rdi, %r13
je 0x4c5e
callq 0x2250
addq $-0x28, %r13
addq $0x28, %r14
jne 0x4c50
jmp 0x4cc1
jmp 0x4c6e
jmp 0x4c6e
movq %rax, %r15
movq -0x28(%r12), %rdi
leaq -0x18(%r12), %rax
cmpq %rdi, %rax
je 0x4c85
callq 0x2250
addq $-0x28, %r12
cmpq %r14, %r12
jne 0x4c71
jmp 0x4cc1
movq %rax, %r15
jmp 0x4cc1
movq %rax, %r15
movq -0x110(%rbp), %rdi
leaq -0x100(%rbp), %rax
cmpq %rax, %rdi
je 0x4cb0
callq 0x2250
leaq 0x60(%rbx), %rdi
callq 0xa4c2
movq %r14, %rdi
callq 0xa67e
movq (%rbx), %rdi
addq $0x10, %rbx
cmpq %rbx, %rdi
je 0x4cd2
callq 0x2250
movq %r15, %rdi
callq 0x23e0