// File: /workspace/github_c_makefile_star2_O3/gplessis[P]dotdeb-redis/deps/jemalloc/src/prof.c
// Function: je_prof_tdata_reinit
prof_tdata_t *
prof_tdata_reinit(tsd_t *tsd, prof_tdata_t *tdata)
{
	uint64_t thr_uid = tdata->thr_uid;
	uint64_t thr_discrim = tdata->thr_discrim + 1;
	char *thread_name = (tdata->thread_name != NULL) ?
	    prof_thread_name_alloc(tsd, tdata->thread_name) : NULL;
	bool active = tdata->active;

	prof_tdata_detach(tsd, tdata);
	return (prof_tdata_init_impl(tsd, thr_uid, thr_discrim, thread_name,
	    active));
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %rsi, %rbx
movq %rdi, %r14
movq 0x18(%rsi), %r15
testq %r15, %r15
je 0x37bd8
movq %r15, %rdi
callq 0x101c0
testq %rax, %rax
je 0x37bd8
movq %rax, %rbp
movq 0x8(%r14), %r13
testq %r13, %r13
jne 0x378fd
cmpl $0x1, (%r14)
jne 0x378fa
movq %r14, %rdi
callq 0x3cda2
movq %rax, %r13
movq %rax, 0x8(%r14)
jmp 0x378fd
xorl %r13d, %r13d
movq 0x28(%r14), %r12
testq %r12, %r12
jne 0x3791a
movq %r14, %rdi
callq 0x22135
movq %rax, %r12
testq %rax, %rax
je 0x37bd8
leaq 0x1(%rbp), %rcx
cmpq $0x3800, %rcx           # imm = 0x3800
movq %rcx, 0x8(%rsp)
ja 0x37943
testq %r13, %r13
jne 0x37964
movq %r12, %rdi
movq %rcx, %rsi
xorl %edx, %edx
callq 0x2872f
jmp 0x379d4
leaq 0x23bf6(%rip), %rax     # 0x5b540
cmpq %rcx, (%rax)
jae 0x3797e
movq %r14, %rdi
movq %r12, %rsi
movq %rcx, %rdx
xorl %ecx, %ecx
movq %r13, %r8
callq 0x360a4
jmp 0x379d4
cmpq $0x1000, %rcx           # imm = 0x1000
ja 0x379e5
shrq $0x3, %rbp
leaq 0x10648(%rip), %rax     # 0x47fc0
movzbl (%rax,%rbp), %eax
jmp 0x379ed
testq %r13, %r13
je 0x379c7
leaq 0x24456(%rip), %rax     # 0x5bde0
cmpq %rcx, (%rax)
jb 0x379c7
movq %rcx, %rdi
callq 0x38a8d
movl %eax, %eax
leaq 0xfea0(%rip), %rcx      # 0x47840
movq (%rcx,%rax,8), %rdx
shlq $0x5, %rax
leaq (%rax,%r13), %rsi
addq $0x20, %rsi
movl 0x10(%rsi), %eax
testl %eax, %eax
jne 0x37ab1
movl $0xffffffff, 0x8(%rsi)  # imm = 0xFFFFFFFF
jmp 0x37acd
movq %r12, %rdi
movq %rcx, %rsi
xorl %edx, %edx
callq 0x289f1
movq %rax, %rbp
testq %rax, %rax
jne 0x37b3b
jmp 0x37bd8
movq %rcx, %rdi
callq 0x38a8d
movl %eax, %r8d
movq %r8, %rax
shlq $0x5, %rax
leaq (%rax,%r13), %rcx
addq $0x20, %rcx
leaq 0xfe3a(%rip), %rax      # 0x47840
movq (%rax,%r8,8), %rax
movq %rax, 0x10(%rsp)
movl 0x10(%rcx), %eax
testl %eax, %eax
jne 0x37a1f
movl $0xffffffff, 0x8(%rcx)  # imm = 0xFFFFFFFF
jmp 0x37a3b
decl %eax
movl %eax, 0x10(%rcx)
cmpl 0x8(%rcx), %eax
jge 0x37a2c
movl %eax, 0x8(%rcx)
movq 0x18(%rcx), %rdx
movl %eax, %eax
movq (%rdx,%rax,8), %rbp
testq %rbp, %rbp
jne 0x37a61
movq %r14, %rdi
movq %r12, %rsi
movq %r13, %rdx
movq %rcx, %r12
movq %r8, %rbp
callq 0x3cbd1
movq %rbp, %r8
movq %r12, %rcx
movq %rax, %rbp
testq %rax, %rax
je 0x37bd8
leaq 0x22bb9(%rip), %rax     # 0x5a621
cmpb $0x1, (%rax)
jne 0x37a8b
leaq (%r8,%r8,2), %rsi
shlq $0x5, %rsi
addq 0x2055c(%rip), %rsi     # 0x57fd8
movq %rbp, %rdi
xorl %edx, %edx
movq %rcx, %r12
callq 0x2854f
jmp 0x37aa9
leaq 0x22ba1(%rip), %rax     # 0x5a633
cmpb $0x1, (%rax)
jne 0x37aac
movq %rbp, %rdi
xorl %esi, %esi
movq 0x10(%rsp), %rdx
movq %rcx, %r12
callq 0x10270
movq %r12, %rcx
incq (%rcx)
jmp 0x37b1f
decl %eax
movl %eax, 0x10(%rsi)
cmpl 0x8(%rsi), %eax
jge 0x37abe
movl %eax, 0x8(%rsi)
movq 0x18(%rsi), %rcx
movl %eax, %eax
movq (%rcx,%rax,8), %rbp
testq %rbp, %rbp
jne 0x37ae7
movq %r12, %rdi
movq %rdx, %rsi
xorl %edx, %edx
callq 0x289f1
movq %rax, %rbp
testq %rax, %rax
jne 0x37b1f
jmp 0x37bd8
leaq 0x22b33(%rip), %rax     # 0x5a621
cmpb $0x1, (%rax)
jne 0x37b00
movq %rbp, %rdi
movq %rsi, %r12
movl $0xa5, %esi
jmp 0x37b14
leaq 0x22b2c(%rip), %rax     # 0x5a633
cmpb $0x1, (%rax)
jne 0x37b1c
movq %rbp, %rdi
movq %rsi, %r12
xorl %esi, %esi
callq 0x10270
movq %r12, %rsi
incq (%rsi)
movl 0x18(%r13), %eax
incl %eax
movl %eax, 0x18(%r13)
cmpl $0xd3, %eax
jne 0x37b3b
movq %r14, %rdi
movq %r13, %rsi
callq 0x3c7e1
leaq 0x23b6e(%rip), %r13     # 0x5b6b0
movq (%r13), %rax
notq %rax
andq %rbp, %rax
cmpq %rax, %rbp
jne 0x37b68
movq %rbp, %rdi
callq 0x36d3b
movq %rax, %r12
movq (%r13), %rax
notq %rax
andq %rbp, %rax
jmp 0x37b6b
movq (%rax), %r12
cmpq %rax, %rbp
jne 0x37b7a
movq %rbp, %rdi
callq 0x36d46
jmp 0x37bc1
movq %rbp, %rcx
subq %rax, %rcx
shrq $0xc, %rcx
leaq 0x239cd(%rip), %rdx     # 0x5b558
subq (%rdx), %rcx
movq 0x68(%rax,%rcx,8), %rax
movl %eax, %ecx
shrl $0x5, %ecx
movl $0xff, %edx
andl %edx, %ecx
cmpl %edx, %ecx
jne 0x37bb4
shrq %rax
andq $-0x1000, %rax          # imm = 0xF000
addq $-0x1000, %rax          # imm = 0xF000
jmp 0x37bc1
movl %ecx, %eax
leaq 0xfc83(%rip), %rcx      # 0x47840
movq (%rcx,%rax,8), %rax
movq 0x8(%rsp), %rdx
lock
xaddq %rax, 0x58(%r12)
movq %rbp, %rdi
movq %r15, %rsi
callq 0x10400
movq (%rbx), %rdi
callq 0x106d0
cmpb $0x1, 0x20(%rbx)
jne 0x37c00
leaq 0x40(%rbx), %rdi
callq 0x3ed8b
testq %rax, %rax
je 0x37c08
movb $0x0, 0x20(%rbx)
movq $0x0, 0x20(%r14)
movq (%rbx), %rdi
callq 0x10440
movq $0x0, 0x20(%r14)
movq (%rbx), %rdi
callq 0x10440
leaq 0x23bb9(%rip), %r15     # 0x5b7d8
movq %r15, %rdi
callq 0x106d0
movq %r14, %rdi
movq %rbx, %rsi
callq 0x37d8b
movq %r15, %rdi
callq 0x10440