// File: navrajsaini[P]PL_Compiler_design_project/BlockTable.cpp
// Function: BlockTable::printtable()
void BlockTable::printtable()
{
   int ind = 0;
   for (vector<TableEntry>::iterator j = table[blockLevel].begin();
	j != table[blockLevel].end(); ++j)
   {
      cout << "location: " << ind+1 << endl
	   << "   index: " << j -> idindex << endl
	   << "   kind:  " << j -> kind << endl
	   << "   type:  " << j -> type << endl
	   << "   size:  " << j -> size << endl
	   << "   value: " << j -> value << endl
	   << "   disp:  " << j -> disp << endl
	   << "   Label: " << j -> procLabel << endl;
      ind++;
   }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movl $0x0, -0xc(%rbp)
movq %rax, %rdi
addq $0x8, %rdi
movslq 0xf8(%rax), %rax
imulq $0x18, %rax, %rax
addq %rax, %rdi
callq 0x1ab80
movq %rax, -0x18(%rbp)
movq -0x28(%rbp), %rax
movq %rax, %rdi
addq $0x8, %rdi
movslq 0xf8(%rax), %rax
imulq $0x18, %rax, %rax
addq %rax, %rdi
callq 0x1abf0
movq %rax, -0x20(%rbp)
leaq -0x18(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x1abb0
testb $0x1, %al
jne 0x1a5c1
jmp 0x1a788
movq 0xca00(%rip), %rdi      # 0x26fc8
leaq 0x5472(%rip), %rsi      # 0x1fa41
callq 0x21b0
movq %rax, %rdi
movl -0xc(%rbp), %esi
addl $0x1, %esi
callq 0x2320
movq %rax, %rdi
movq 0xc9cc(%rip), %rsi      # 0x26fb8
callq 0x21d0
movq %rax, %rdi
leaq 0x5451(%rip), %rsi      # 0x1fa4c
callq 0x21b0
movq %rax, -0x60(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x1ac20
movq -0x60(%rbp), %rdi
movl (%rax), %esi
callq 0x2320
movq %rax, %rdi
movq 0xc996(%rip), %rsi      # 0x26fb8
callq 0x21d0
movq %rax, %rdi
leaq 0x5426(%rip), %rsi      # 0x1fa57
callq 0x21b0
movq %rax, -0x58(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x1ac20
movq -0x58(%rbp), %rdi
movl 0x4(%rax), %esi
callq 0x2320
movq %rax, %rdi
movq 0xc95f(%rip), %rsi      # 0x26fb8
callq 0x21d0
movq %rax, %rdi
leaq 0x53fa(%rip), %rsi      # 0x1fa62
callq 0x21b0
movq %rax, -0x50(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x1ac20
movq -0x50(%rbp), %rdi
movl 0x8(%rax), %esi
callq 0x2320
movq %rax, %rdi
movq 0xc928(%rip), %rsi      # 0x26fb8
callq 0x21d0
movq %rax, %rdi
leaq 0x53ce(%rip), %rsi      # 0x1fa6d
callq 0x21b0
movq %rax, -0x48(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x1ac20
movq -0x48(%rbp), %rdi
movl 0xc(%rax), %esi
callq 0x2320
movq %rax, %rdi
movq 0xc8f1(%rip), %rsi      # 0x26fb8
callq 0x21d0
movq %rax, %rdi
leaq 0x53a2(%rip), %rsi      # 0x1fa78
callq 0x21b0
movq %rax, -0x40(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x1ac20
movq -0x40(%rbp), %rdi
movl 0x10(%rax), %esi
callq 0x2320
movq %rax, %rdi
movq 0xc8ba(%rip), %rsi      # 0x26fb8
callq 0x21d0
movq %rax, %rdi
leaq 0x5376(%rip), %rsi      # 0x1fa83
callq 0x21b0
movq %rax, -0x38(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x1ac20
movq -0x38(%rbp), %rdi
movl 0x14(%rax), %esi
callq 0x2320
movq %rax, %rdi
movq 0xc883(%rip), %rsi      # 0x26fb8
callq 0x21d0
movq %rax, %rdi
leaq 0x534a(%rip), %rsi      # 0x1fa8e
callq 0x21b0
movq %rax, -0x30(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x1ac20
movq -0x30(%rbp), %rdi
movl 0x18(%rax), %esi
callq 0x2320
movq %rax, %rdi
movq 0xc84c(%rip), %rsi      # 0x26fb8
callq 0x21d0
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x1ac40
jmp 0x1a589
addq $0x60, %rsp
popq %rbp
retq
nop