// File: /workspace/github_cpp_makefile_star2_O2/marcellapantarotto[P]pseudoSO/scheduler.cpp
// Function: Scheduler::displayProcessQueue()
void Scheduler::displayProcessQueue()
{
	Process x;

	cout << "\n All processes in real time:  " << endl;
	for(int i=0; i<(int)realTIME.size(); i++) {
		x = realTIME.front();
		cout << x << endl;
		realTIME.pop();		// remove o próximo elemento
		realTIME.push(x);	// insere um processo no final da fila
	}

	cout << "\n All user processes with priority 1:  "<< endl;
	for(int i=0; i<(int)userP1.size(); i++) {
		x = userP1.front();
		cout << x << endl;
		userP1.pop();
		userP1.push(x);
	}

	cout << "\n All user processes with priority 2:  "<< endl;
	for(int i=0; i<(int)userP2.size(); i++) {
		x = userP2.front();
		cout << x << endl;
		userP2.pop();
		userP2.push(x);
	}

	cout << "\n All user processes with priority 3:  "<< endl;
	for(int i=0; i<(int)userP3.size(); i++) {
		x = userP3.front();
		cout << x << endl;
		userP3.pop();
		userP3.push(x);
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdi, %rbx
movq 0x4ff7(%rip), %r14      # 0x7fd0
leaq 0x20ef(%rip), %rsi      # 0x50cf
movq %r14, %rdi
callq 0x2170
movq %rax, %rdi
callq 0x20d0
leaq 0x110(%rbx), %r15
xorl %r13d, %r13d
leaq -0x50(%rbp), %r12
movq %r15, %rdi
callq 0x38b6
cmpl %eax, %r13d
jge 0x304c
movq 0x120(%rbx), %rax
movups (%rax), %xmm0
movups 0x10(%rax), %xmm1
movaps %xmm1, -0x40(%rbp)
movaps %xmm0, -0x50(%rbp)
movq %r14, %rdi
movq %r12, %rsi
callq 0x2870
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
callq 0x4592
movq %r15, %rdi
movq %r12, %rsi
callq 0x3802
incl %r13d
jmp 0x2ffe
movq 0x4f7d(%rip), %r14      # 0x7fd0
leaq 0x2095(%rip), %rsi      # 0x50ef
movq %r14, %rdi
callq 0x2170
movq %rax, %rdi
callq 0x20d0
leaq 0x20(%rbx), %r15
xorl %r13d, %r13d
leaq -0x50(%rbp), %r12
movq %r15, %rdi
callq 0x38b6
cmpl %eax, %r13d
jge 0x30c0
movq 0x30(%rbx), %rax
movups (%rax), %xmm0
movups 0x10(%rax), %xmm1
movaps %xmm1, -0x40(%rbp)
movaps %xmm0, -0x50(%rbp)
movq %r14, %rdi
movq %r12, %rsi
callq 0x2870
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
callq 0x4592
movq %r15, %rdi
movq %r12, %rsi
callq 0x3802
incl %r13d
jmp 0x3075
movq 0x4f09(%rip), %r14      # 0x7fd0
leaq 0x2049(%rip), %rsi      # 0x5117
movq %r14, %rdi
callq 0x2170
movq %rax, %rdi
callq 0x20d0
leaq 0x70(%rbx), %r15
xorl %r13d, %r13d
leaq -0x50(%rbp), %r12
movq %r15, %rdi
callq 0x38b6
cmpl %eax, %r13d
jge 0x3137
movq 0x80(%rbx), %rax
movups (%rax), %xmm0
movups 0x10(%rax), %xmm1
movaps %xmm1, -0x40(%rbp)
movaps %xmm0, -0x50(%rbp)
movq %r14, %rdi
movq %r12, %rsi
callq 0x2870
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
callq 0x4592
movq %r15, %rdi
movq %r12, %rsi
callq 0x3802
incl %r13d
jmp 0x30e9
movq 0x4e92(%rip), %r14      # 0x7fd0
leaq 0x1ffa(%rip), %rsi      # 0x513f
movq %r14, %rdi
callq 0x2170
movq %rax, %rdi
callq 0x20d0
leaq 0xc0(%rbx), %r15
xorl %r13d, %r13d
leaq -0x50(%rbp), %r12
movq %r15, %rdi
callq 0x38b6
cmpl %eax, %r13d
jge 0x31b1
movq 0xd0(%rbx), %rax
movups (%rax), %xmm0
movups 0x10(%rax), %xmm1
movaps %xmm1, -0x40(%rbp)
movaps %xmm0, -0x50(%rbp)
movq %r14, %rdi
movq %r12, %rsi
callq 0x2870
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
callq 0x4592
movq %r15, %rdi
movq %r12, %rsi
callq 0x3802
incl %r13d
jmp 0x3163
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq