// File: /workspace/github_cpp_makefile_star2_O3/talyerushalmy[P]SimpleFileSystem/src/Files.cpp
// Function: Directory::getAbsolutePath[abi:cxx11]()
std::string Directory::getAbsolutePath()
{
	if (this->parent == NULL)
		return this->getName();
	if (parent->getName().compare("/") != 0)
		return parent->getAbsolutePath() + '/' + this->getName();
	return parent->getAbsolutePath() + this->getName();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x68, %rsp
movq %rsi, %r14
movq %rdi, %rbx
movq 0x40(%rsi), %rax
testq %rax, %rax
je 0xc0e6
leaq -0x38(%rbp), %r13
movq %r13, -0x10(%r13)
movq 0x8(%rax), %rsi
movq 0x10(%rax), %rdx
addq %rsi, %rdx
leaq -0x48(%rbp), %r12
movq %r12, %rdi
callq 0x392c
leaq 0x218b(%rip), %rsi      # 0xe203
movq %r12, %rdi
callq 0x3080
movl %eax, %r15d
movq (%r12), %rdi
cmpq %r13, %rdi
je 0xc091
callq 0x31a0
testl %r15d, %r15d
je 0xc105
movq 0x40(%r14), %rsi
leaq -0x68(%rbp), %r15
movq %r15, %rdi
callq 0xc02e
movq 0x8(%r15), %rsi
movl $0x1, %ecx
movq %r15, %rdi
xorl %edx, %edx
movl $0x2f, %r8d
callq 0x32e0
movq %r13, -0x48(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0xc17a
movq %rdx, -0x48(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x38(%rbp)
jmp 0xc182
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
movq 0x8(%r14), %rsi
movq 0x10(%r14), %rdx
addq %rsi, %rdx
movq %rbx, %rdi
callq 0x392c
jmp 0xc282
movq 0x40(%r14), %rsi
leaq -0x48(%rbp), %rdi
callq 0xc02e
leaq -0x58(%rbp), %r15
movq %r15, -0x10(%r15)
movq 0x8(%r14), %rsi
movq 0x10(%r14), %rdx
addq %rsi, %rdx
leaq -0x68(%rbp), %rdi
callq 0x392c
movq -0x48(%rbp), %rcx
movq -0x40(%rbp), %r8
movq -0x60(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %edi
cmpq %r13, %rcx
je 0xc14c
movq -0x38(%rbp), %rdi
movq -0x68(%rbp), %rsi
cmpq %rdi, %rax
jbe 0xc16c
movl $0xf, %edi
cmpq %r15, %rsi
je 0xc163
movq -0x58(%rbp), %rdi
cmpq %rdi, %rax
jbe 0xc294
leaq -0x48(%rbp), %rdi
callq 0x3090
jmp 0xc2a1
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, -0x40(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq -0x78(%rbp), %r15
movq %r15, -0x10(%r15)
movq 0x8(%r14), %rsi
movq 0x10(%r14), %rdx
addq %rsi, %rdx
leaq -0x88(%rbp), %rdi
callq 0x392c
movq -0x48(%rbp), %rcx
movq -0x40(%rbp), %r8
movq -0x80(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %edi
cmpq %r13, %rcx
je 0xc1d6
movq -0x38(%rbp), %rdi
movq -0x88(%rbp), %rsi
cmpq %rdi, %rax
jbe 0xc1f5
movl $0xf, %edi
cmpq %r15, %rsi
je 0xc1f0
movq -0x78(%rbp), %rdi
cmpq %rdi, %rax
jbe 0xc200
leaq -0x48(%rbp), %rdi
callq 0x3090
jmp 0xc210
leaq -0x88(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x31e0
leaq 0x10(%rbx), %rdx
movq %rdx, (%rbx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0xc22f
movq %rsi, (%rbx)
movq (%rcx), %rdx
movq %rdx, 0x10(%rbx)
jmp 0xc235
movups (%rcx), %xmm0
movups %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x8(%rbx)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq -0x88(%rbp), %rdi
cmpq %r15, %rdi
je 0xc262
callq 0x31a0
movq -0x48(%rbp), %rdi
cmpq %r13, %rdi
je 0xc270
callq 0x31a0
leaq -0x58(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0xc282
callq 0x31a0
movq %rbx, %rax
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq -0x68(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x31e0
leaq 0x10(%rbx), %rdx
movq %rdx, (%rbx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0xc2c0
movq %rsi, (%rbx)
movq (%rcx), %rdx
movq %rdx, 0x10(%rbx)
jmp 0xc2c6
movups (%rcx), %xmm0
movups %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x8(%rbx)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq -0x68(%rbp), %rdi
cmpq %r15, %rdi
je 0xc2f0
callq 0x31a0
movq -0x48(%rbp), %rdi
cmpq %r13, %rdi
jne 0xc27d
jmp 0xc282
movq %rax, %rbx
movq -0x68(%rbp), %rdi
cmpq %r15, %rdi
je 0xc311
callq 0x31a0
jmp 0xc311
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r13, %rdi
jne 0xc355
jmp 0xc35a
movq %rax, %rbx
movq -0x88(%rbp), %rdi
cmpq %r15, %rdi
je 0xc335
callq 0x31a0
jmp 0xc335
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r13, %rdi
je 0xc348
callq 0x31a0
jmp 0xc348
movq %rax, %rbx
leaq -0x58(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0xc35a
callq 0x31a0
movq %rbx, %rdi
callq 0x32b0