// File: /workspace/github_c_makefile_star2_O0/PoulinV[P]AxiCLASS/build/../source/transfer.c
// Function: transfer_source_tau_size_max
int transfer_source_tau_size_max(
                                 struct precision * ppr,
                                 struct background * pba,
                                 struct perturbations * ppt,
                                 struct transfer * ptr,
                                 double tau_rec,
                                 double tau0,
                                 int * tau_size_max
                                 ) {

  int index_md;
  int index_tt;
  int tau_size_tt=0;

  *tau_size_max = 0;

  for (index_md = 0; index_md < ptr->md_size; index_md++) {

    for (index_tt = 0; index_tt < ptr->tt_size[index_md]; index_tt++) {

      class_call(transfer_source_tau_size(ppr,
                                          pba,
                                          ppt,
                                          ptr,
                                          tau_rec,
                                          tau0,
                                          index_md,
                                          index_tt,
                                          &tau_size_tt),
                 ptr->error_message,
                 ptr->error_message);

      *tau_size_max = MAX(*tau_size_max,tau_size_tt);
    }
  }

  return _SUCCESS_;
}

// Assembly:
subq $0x868, %rsp            # imm = 0x868
movq %rdi, 0x858(%rsp)
movq %rsi, 0x850(%rsp)
movq %rdx, 0x848(%rsp)
movq %rcx, 0x840(%rsp)
movsd %xmm0, 0x838(%rsp)
movsd %xmm1, 0x830(%rsp)
movq %r8, 0x828(%rsp)
movl $0x0, 0x81c(%rsp)
movq 0x828(%rsp), %rax
movl $0x0, (%rax)
movl $0x0, 0x824(%rsp)
movl 0x824(%rsp), %eax
movq 0x840(%rsp), %rcx
cmpl 0x8a4(%rcx), %eax
jge 0x133a28
movl $0x0, 0x820(%rsp)
movl 0x820(%rsp), %eax
movq 0x840(%rsp), %rcx
movq 0x8f0(%rcx), %rcx
movslq 0x824(%rsp), %rdx
cmpl (%rcx,%rdx,4), %eax
jge 0x133a10
movq 0x858(%rsp), %rdi
movq 0x850(%rsp), %rsi
movq 0x848(%rsp), %rdx
movq 0x840(%rsp), %rcx
movsd 0x838(%rsp), %xmm0
movsd 0x830(%rsp), %xmm1
movl 0x824(%rsp), %r8d
movl 0x820(%rsp), %r9d
leaq 0x81c(%rsp), %rax
movq %rax, (%rsp)
callq 0x13b7e0
cmpl $0x1, %eax
jne 0x1339be
leaq 0x10(%rsp), %rdi
movq 0x840(%rsp), %rcx
addq $0x96a, %rcx            # imm = 0x96A
leaq 0x9ea63(%rip), %rsi     # 0x1d23d8
leaq 0xcfbd9(%rip), %rdx     # 0x203555
movb $0x0, %al
callq 0x5b9c0
movq 0x840(%rsp), %rdi
addq $0x96a, %rdi            # imm = 0x96A
leaq 0x10(%rsp), %r8
leaq 0x9e696(%rip), %rsi     # 0x1d2034
leaq 0xcfc0e(%rip), %rdx     # 0x2035b3
movl $0x66a, %ecx            # imm = 0x66A
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x864(%rsp)
jmp 0x133a33
movq 0x828(%rsp), %rax
movl (%rax), %eax
cmpl 0x81c(%rsp), %eax
jge 0x1339de
movl 0x81c(%rsp), %eax
movl %eax, 0xc(%rsp)
jmp 0x1339ec
movq 0x828(%rsp), %rax
movl (%rax), %eax
movl %eax, 0xc(%rsp)
movl 0xc(%rsp), %ecx
movq 0x828(%rsp), %rax
movl %ecx, (%rax)
movl 0x820(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x820(%rsp)
jmp 0x1338db
jmp 0x133a12
movl 0x824(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x824(%rsp)
jmp 0x1338b5
movl $0x0, 0x864(%rsp)
movl 0x864(%rsp), %eax
addq $0x868, %rsp            # imm = 0x868
retq
nopw %cs:(%rax,%rax)