// File: /workspace/github_c_makefile_star2_O1/markpeerdeman[P]mbemm/src/emath/parse.c
// Function: fill_C_points
void fill_C_points(FILE *fp, cmesh theCMesh)
{ point p; 
  point q;
  int node1label;
  int node2label;
  double length;
  static char theKeyword[80];
  while (1)
  { read_keyword(fp,theKeyword);
    if (!strcmp(theKeyword,"END_CNODES")) return;
    node1label=atoi(theKeyword);
    read_keyword(fp,theKeyword); 
    node2label=atoi(theKeyword)+theCMesh->nr_of_nodes_basemesh;
    p=(point)point_dll(theCMesh->merged_mesh->mesh_p,SEARCH,node1label);
    q=(point)point_dll(theCMesh->merged_mesh->mesh_p,SEARCH,node2label);
    p->type=CNODE; q->type=CNODE;
    p->conn=q->label; q->conn=p->label;
    read_keyword(fp,theKeyword); p->n1=strtod(theKeyword,NULL);
    read_keyword(fp,theKeyword); p->n2=strtod(theKeyword,NULL);
    read_keyword(fp,theKeyword); p->n3=strtod(theKeyword,NULL);
    length=sqrt(p->n1*p->n1+p->n2*p->n2+p->n3*p->n3);
    p->n1/=length;
    p->n2/=length;
    p->n3/=length;
    q->n1=p->n1;
    q->n2=p->n2;
    q->n3=p->n3;
     
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movabsq $0x444f4e435f444e45, %r15 # imm = 0x444F4E435F444E45
movabsq $0x5345444f4e435f, %r12 # imm = 0x5345444F4E435F
leaq 0xeca8(%rip), %rsi      # 0x155a0
callq 0x658c
movq 0xec9c(%rip), %rax      # 0x155a0
xorq %r15, %rax
movq 0xec95(%rip), %rcx      # 0x155a3
xorq %r12, %rcx
orq %rax, %rcx
je 0x6a8f
leaq 0xec7f(%rip), %r15      # 0x155a0
movq %r15, %rdi
callq 0x1180
movl %eax, %ebp
movq %r14, %rdi
movq %r15, %rsi
callq 0x658c
movq %r15, %rdi
callq 0x1180
movl %eax, %r13d
addl 0x8(%rbx), %r13d
movq (%rbx), %rax
movq (%rax), %rdi
movl $0x2, %esi
movl %ebp, %edx
callq 0xcf07
movq %rax, %r12
movq (%rbx), %rax
movq (%rax), %rdi
movl $0x2, %esi
movl %r13d, %edx
callq 0xcf07
movq %rax, %r13
movl $0xf, %eax
movl %eax, 0x14(%r12)
movl %eax, 0x14(%r13)
movl 0x10(%r13), %eax
movl %eax, 0x18(%r12)
movl 0x10(%r12), %eax
movl %eax, 0x18(%r13)
movq %r14, %rdi
movq %r15, %rsi
callq 0x658c
movq %r15, %rdi
xorl %esi, %esi
callq 0x1070
movsd %xmm0, 0x68(%r12)
movq %r14, %rdi
movq %r15, %rsi
callq 0x658c
movq %r15, %rdi
xorl %esi, %esi
callq 0x1070
movsd %xmm0, 0x70(%r12)
movq %r14, %rdi
movq %r15, %rsi
callq 0x658c
movq %r15, %rdi
xorl %esi, %esi
callq 0x1070
movsd %xmm0, 0x78(%r12)
movsd 0x68(%r12), %xmm1
movsd 0x70(%r12), %xmm2
mulsd %xmm2, %xmm2
mulsd %xmm1, %xmm1
addsd %xmm2, %xmm1
mulsd %xmm0, %xmm0
addsd %xmm1, %xmm0
ucomisd 0x7a4a(%rip), %xmm0     # 0xe458
jb 0x6a16
sqrtsd %xmm0, %xmm0
jmp 0x6a1b
callq 0x11b0
movupd 0x68(%r12), %xmm1
movapd %xmm0, %xmm2
unpcklpd %xmm0, %xmm2            # xmm2 = xmm2[0],xmm0[0]
divpd %xmm2, %xmm1
movupd %xmm1, 0x68(%r12)
movsd 0x78(%r12), %xmm2
divsd %xmm0, %xmm2
movsd %xmm2, 0x78(%r12)
movupd %xmm1, 0x68(%r13)
movsd %xmm2, 0x78(%r13)
movq %r14, %rdi
movq %r15, %rsi
callq 0x658c
movq 0xeb3b(%rip), %rax      # 0x155a0
movabsq $0x444f4e435f444e45, %rcx # imm = 0x444F4E435F444E45
xorq %rcx, %rax
movq 0xeb2a(%rip), %rcx      # 0x155a3
movabsq $0x5345444f4e435f, %rdx # imm = 0x5345444F4E435F
xorq %rdx, %rcx
orq %rax, %rcx
jne 0x6921
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq