// File: /workspace/github_c_makefile_star2_O0/olcaytaner[P]Isell/savemodel.c
// Function: save_model_svm
void save_model_svm(FILE* modelfile, Datasetptr d, Svm_modelptr m)
{
 /*Last Changed 26.12.2005*/
 char pst[READLINELENGTH];
 set_precision(pst, NULL, "\n");
 fprintf(modelfile, "%d %d\n", m->nr_class, m->l);
 fprintf(modelfile, "%d %d %d\n", m->param.svm_type, m->param.kernel_type, m->param.degree);
 fprintf(modelfile, pst, m->param.gamma);
 fprintf(modelfile, pst, m->param.coef0);
 fprintf(modelfile, pst, m->param.p);
 if (!in_list(m->param.svm_type, 3, ONE_CLASS, EPSILON_SVR, NU_SVR))
   save_array_int(modelfile, m->nSV, m->nr_class);
 save_array(modelfile, m->rho, ((m->nr_class - 1) * m->nr_class) / 2);
 if (!in_list(m->param.svm_type, 3, ONE_CLASS, EPSILON_SVR, NU_SVR))
  {
   save_array(modelfile, m->probA, ((m->nr_class - 1) * m->nr_class) / 2);
   save_array(modelfile, m->probB, ((m->nr_class - 1) * m->nr_class) / 2);
  }
 save_array_two(modelfile, m->sv_coef, m->nr_class - 1, m->l);
 save_array_support_vector(modelfile, d, m->SV, m->l);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x7a140, %rsp          # imm = 0x7A140
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
leaq -0x7a140(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
leaq 0x2adb2(%rip), %rdx     # 0xe5d3b
callq 0x53310
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x58(%rax), %edx
movq -0x18(%rbp), %rax
movl 0x5c(%rax), %ecx
leaq 0x27b1d(%rip), %rsi     # 0xe2ac4
movb $0x0, %al
callq 0x4280
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movl (%rax), %edx
movq -0x18(%rbp), %rax
movl 0x4(%rax), %ecx
movq -0x18(%rbp), %rax
movl 0x8(%rax), %r8d
leaq 0x27aea(%rip), %rsi     # 0xe2ab8
movb $0x0, %al
callq 0x4280
movq -0x8(%rbp), %rdi
leaq -0x7a140(%rbp), %rsi
movq -0x18(%rbp), %rax
movsd 0x10(%rax), %xmm0
movb $0x1, %al
callq 0x4280
movq -0x8(%rbp), %rdi
leaq -0x7a140(%rbp), %rsi
movq -0x18(%rbp), %rax
movsd 0x18(%rax), %xmm0
movb $0x1, %al
callq 0x4280
movq -0x8(%rbp), %rdi
leaq -0x7a140(%rbp), %rsi
movq -0x18(%rbp), %rax
movsd 0x48(%rax), %xmm0
movb $0x1, %al
callq 0x4280
movq -0x18(%rbp), %rax
movl (%rax), %edi
movl $0x3, %ecx
movl $0x2, %edx
movl $0x4, %r8d
movl %ecx, %esi
movb $0x0, %al
callq 0x53e40
cmpl $0x0, %eax
jne 0xbb062
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movq 0x78(%rax), %rsi
movq -0x18(%rbp), %rax
movl 0x58(%rax), %edx
callq 0xb9c10
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movq 0x70(%rax), %rsi
movq -0x18(%rbp), %rax
movl 0x58(%rax), %eax
subl $0x1, %eax
movq -0x18(%rbp), %rcx
imull 0x58(%rcx), %eax
movl $0x2, %ecx
cltd
idivl %ecx
movl %eax, %edx
callq 0xb9b80
movq -0x18(%rbp), %rax
movl (%rax), %edi
movl $0x3, %ecx
movl $0x2, %edx
movl $0x4, %r8d
movl %ecx, %esi
movb $0x0, %al
callq 0x53e40
cmpl $0x0, %eax
jne 0xbb113
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movq 0xa0(%rax), %rsi
movq -0x18(%rbp), %rax
movl 0x58(%rax), %eax
subl $0x1, %eax
movq -0x18(%rbp), %rcx
imull 0x58(%rcx), %eax
movl $0x2, %ecx
cltd
idivl %ecx
movl %eax, %edx
callq 0xb9b80
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movq 0xa8(%rax), %rsi
movq -0x18(%rbp), %rax
movl 0x58(%rax), %eax
subl $0x1, %eax
movq -0x18(%rbp), %rcx
imull 0x58(%rcx), %eax
movl $0x2, %ecx
cltd
idivl %ecx
movl %eax, %edx
callq 0xb9b80
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rax
movq 0x68(%rax), %rsi
movq -0x18(%rbp), %rax
movl 0x58(%rax), %edx
subl $0x1, %edx
movq -0x18(%rbp), %rax
movl 0x5c(%rax), %ecx
callq 0xb9c80
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x18(%rbp), %rax
movq 0x60(%rax), %rdx
movq -0x18(%rbp), %rax
movl 0x5c(%rax), %ecx
callq 0xb9e40
addq $0x7a140, %rsp          # imm = 0x7A140
popq %rbp
retq
nopw (%rax,%rax)