// File: /workspace/github_c_makefile_star2_O0/markpeerdeman[P]mbemm/src/emath/contactc.c
// Function: make_rhs_vectorc
void make_rhs_vectorc(mesh theMesh)
{ restraint r;
  point p;

  fillvector(main_u,ZEROFILL); 
  fillvector(main_f,ZEROFILL);

  r=(restraint)restraint_dll(theMesh->mesh_t,START,0);
  while (r!=(restraint)NULL)
  { V(main_u,r->label*3-2)=r->f1;
    V(main_u,r->label*3-1)=r->f2;
    V(main_u,r->label*3  )=r->f3;
    r=r->NEXT;
  }
  r=(restraint)restraint_dll(theMesh->mesh_d,START,0);
  while (r!=(restraint)NULL)
  { V(main_u,r->label*3-2)=r->u1;
    V(main_u,r->label*3-1)=r->u2;
    V(main_u,r->label*3  )=r->u3;
    r=r->NEXT;
  }

  p=(point)point_dll(theMesh->mesh_p,START,0);
  while (p!=(point)NULL)
  { if (p->type==CNODE)
    { V(main_u,p->label*3-2)=0.0;
      V(main_u,p->label*3-1)=0.0;
      V(main_u,p->label*3  )=0.0;
    }
    p=p->NEXT;
  } 

}

// Assembly:
subq $0x18, %rsp
movq %rdi, 0x10(%rsp)
leaq 0x13300(%rip), %rax     # 0x1e420
movq (%rax), %rdi
xorl %esi, %esi
callq 0x15aa0
leaq 0x132e7(%rip), %rax     # 0x1e418
movq (%rax), %rdi
xorl %esi, %esi
callq 0x15aa0
movq 0x10(%rsp), %rax
movq 0x18(%rax), %rdi
xorl %edx, %edx
movl %edx, %esi
callq 0x17a40
movq %rax, 0x8(%rsp)
cmpq $0x0, 0x8(%rsp)
je 0xb1fb
movq 0x8(%rsp), %rax
movsd 0x18(%rax), %xmm0
leaq 0x132b1(%rip), %rax     # 0x1e420
movq (%rax), %rax
movq 0x8(%rax), %rax
movq 0x8(%rsp), %rcx
imull $0x3, 0x14(%rcx), %ecx
subl $0x2, %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x8(%rsp), %rax
movsd 0x20(%rax), %xmm0
leaq 0x13282(%rip), %rax     # 0x1e420
movq (%rax), %rax
movq 0x8(%rax), %rax
movq 0x8(%rsp), %rcx
imull $0x3, 0x14(%rcx), %ecx
subl $0x1, %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x8(%rsp), %rax
movsd 0x28(%rax), %xmm0
leaq 0x13253(%rip), %rax     # 0x1e420
movq (%rax), %rax
movq 0x8(%rax), %rax
movq 0x8(%rsp), %rcx
imull $0x3, 0x14(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x8(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x8(%rsp)
jmp 0xb152
movq 0x10(%rsp), %rax
movq 0x10(%rax), %rdi
xorl %edx, %edx
movl %edx, %esi
callq 0x17a40
movq %rax, 0x8(%rsp)
cmpq $0x0, 0x8(%rsp)
je 0xb2bb
movq 0x8(%rsp), %rax
movsd 0x30(%rax), %xmm0
leaq 0x131f1(%rip), %rax     # 0x1e420
movq (%rax), %rax
movq 0x8(%rax), %rax
movq 0x8(%rsp), %rcx
imull $0x3, 0x14(%rcx), %ecx
subl $0x2, %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x8(%rsp), %rax
movsd 0x38(%rax), %xmm0
leaq 0x131c2(%rip), %rax     # 0x1e420
movq (%rax), %rax
movq 0x8(%rax), %rax
movq 0x8(%rsp), %rcx
imull $0x3, 0x14(%rcx), %ecx
subl $0x1, %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x8(%rsp), %rax
movsd 0x40(%rax), %xmm0
leaq 0x13193(%rip), %rax     # 0x1e420
movq (%rax), %rax
movq 0x8(%rax), %rax
movq 0x8(%rsp), %rcx
imull $0x3, 0x14(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x8(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x8(%rsp)
jmp 0xb212
movq 0x10(%rsp), %rax
movq (%rax), %rdi
xorl %edx, %edx
movl %edx, %esi
callq 0x175c0
movq %rax, (%rsp)
cmpq $0x0, (%rsp)
je 0xb368
movq (%rsp), %rax
cmpl $0xf, 0x14(%rax)
jne 0xb357
leaq 0x13134(%rip), %rax     # 0x1e420
movq (%rax), %rax
movq 0x8(%rax), %rax
movq (%rsp), %rcx
imull $0x3, 0x10(%rcx), %ecx
subl $0x2, %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
xorps %xmm0, %xmm0
movsd %xmm0, (%rax,%rcx,8)
leaq 0x1310d(%rip), %rax     # 0x1e420
movq (%rax), %rax
movq 0x8(%rax), %rax
movq (%rsp), %rcx
imull $0x3, 0x10(%rcx), %ecx
subl $0x1, %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
xorps %xmm0, %xmm0
movsd %xmm0, (%rax,%rcx,8)
leaq 0x130e6(%rip), %rax     # 0x1e420
movq (%rax), %rax
movq 0x8(%rax), %rax
movq (%rsp), %rcx
imull $0x3, 0x10(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
xorps %xmm0, %xmm0
movsd %xmm0, (%rax,%rcx,8)
movq (%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, (%rsp)
jmp 0xb2d0
addq $0x18, %rsp
retq
nopl (%rax)