// File: /workspace/github_cpp_makefile_star2_O3/WolfgangLechner[P]StructureAnalysis/molecular_system.cpp
// Function: CMolecularSystem::update_bondOrderHistogramms()
void CMolecularSystem::update_bondOrderHistogramms()
{

  double a,b;
  int n;
  int nop;
  nop = parameter->nop;
  a = OrderParameterHistoStart;
  b = OrderParameterHistoStop;
  n = OrderParameterHistoSize;

  for (int ti= 0;ti<this->parameter->nop;ti++)
  {
    q4Histo[get_HistoBox(this->molecules[ti].Q4,a,b,n)]   += 1;
    q6Histo[get_HistoBox(this->molecules[ti].Q6,a,b,n)]   += 1;
    aq4Histo[get_HistoBox(this->molecules[ti].AQ4,a,b,n)] += 1;
    aq6Histo[get_HistoBox(this->molecules[ti].AQ6,a,b,n)] += 1;
    q46Histo3d[get_HistoBox(this->molecules[ti].Q4,a,b,n)][get_HistoBox(this->molecules[ti].Q6,a,b,n)] += 1;
    aq46Histo3d[get_HistoBox(this->molecules[ti].AQ4,a,b,n)][get_HistoBox(this->molecules[ti].AQ6,a,b,n)] += 1;
  }
  this->normq4 += nop;
  this->normq6 += nop;
  this->normaq4 += nop;
  this->normaq6 += nop;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %rdi, %rbx
movq 0xb4e8c0(%rdi), %rax
movl 0x3208(%rax), %eax
movl %eax, -0x2c(%rbp)
testl %eax, %eax
jle 0x63e8
leaq 0x3ea4(%rbx), %rax
movq %rax, -0x40(%rbp)
leaq 0x3d47a4(%rbx), %rax
movq %rax, -0x38(%rbp)
xorl %r13d, %r13d
movapd 0x2031(%rip), %xmm2     # 0x80a0
movsd 0x1f91(%rip), %xmm3     # 0x8008
leaq 0x228a(%rip), %r15      # 0x8308
xorl %r12d, %r12d
movq 0xb4e8b8(%rbx), %rax
movsd 0x820(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x60cf
movl $0x59, %edx
movq 0x4f44(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1f4c(%rip), %xmm3     # 0x8008
movapd 0x1fdc(%rip), %xmm2     # 0x80a0
movq 0xb4e8b8(%rbx), %rax
xorl %ecx, %ecx
jmp 0x60ea
addsd %xmm3, %xmm0
mulsd 0x1f3d(%rip), %xmm0     # 0x8018
mulsd 0x1fad(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %ecx
movslq %ecx, %rcx
incl 0x24(%rbx,%rcx,4)
movsd 0x818(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x6135
movl $0x59, %edx
movq 0x4ede(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1ee6(%rip), %xmm3     # 0x8008
movapd 0x1f76(%rip), %xmm2     # 0x80a0
movq 0xb4e8b8(%rbx), %rax
xorl %ecx, %ecx
jmp 0x6150
addsd %xmm3, %xmm0
mulsd 0x1ed7(%rip), %xmm0     # 0x8018
mulsd 0x1f47(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %ecx
movslq %ecx, %rcx
incl 0xfc4(%rbx,%rcx,4)
movsd 0x840(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x619e
movl $0x59, %edx
movq 0x4e75(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1e7d(%rip), %xmm3     # 0x8008
movapd 0x1f0d(%rip), %xmm2     # 0x80a0
movq 0xb4e8b8(%rbx), %rax
xorl %ecx, %ecx
jmp 0x61b9
addsd %xmm3, %xmm0
mulsd 0x1e6e(%rip), %xmm0     # 0x8018
mulsd 0x1ede(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %ecx
movslq %ecx, %rcx
incl 0x1f64(%rbx,%rcx,4)
movsd 0x838(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x6207
movl $0x59, %edx
movq 0x4e0c(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1e14(%rip), %xmm3     # 0x8008
movapd 0x1ea4(%rip), %xmm2     # 0x80a0
movq 0xb4e8b8(%rbx), %rax
xorl %ecx, %ecx
jmp 0x6222
addsd %xmm3, %xmm0
mulsd 0x1e05(%rip), %xmm0     # 0x8018
mulsd 0x1e75(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %ecx
movslq %ecx, %rcx
incl 0x2f04(%rbx,%rcx,4)
movsd 0x820(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x6271
movl $0x59, %edx
movq 0x4da3(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1dab(%rip), %xmm3     # 0x8008
movapd 0x1e3b(%rip), %xmm2     # 0x80a0
movq 0xb4e8b8(%rbx), %rax
xorl %r14d, %r14d
jmp 0x628c
addsd %xmm3, %xmm0
mulsd 0x1d9b(%rip), %xmm0     # 0x8018
mulsd 0x1e0b(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %ecx
movslq %ecx, %r14
movsd 0x818(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x62d3
movl $0x59, %edx
movq 0x4d40(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1d48(%rip), %xmm3     # 0x8008
movapd 0x1dd8(%rip), %xmm2     # 0x80a0
movq 0xb4e8b8(%rbx), %rax
xorl %ecx, %ecx
jmp 0x62ee
addsd %xmm3, %xmm0
mulsd 0x1d39(%rip), %xmm0     # 0x8018
mulsd 0x1da9(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %ecx
movslq %ecx, %rcx
imulq $0xfa0, %r14, %rdx      # imm = 0xFA0
addq -0x40(%rbp), %rdx
incl (%rdx,%rcx,4)
movsd 0x840(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x6344
movl $0x59, %edx
movq 0x4cd0(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1cd8(%rip), %xmm3     # 0x8008
movapd 0x1d68(%rip), %xmm2     # 0x80a0
movq 0xb4e8b8(%rbx), %rax
xorl %r14d, %r14d
jmp 0x635f
addsd %xmm3, %xmm0
mulsd 0x1cc8(%rip), %xmm0     # 0x8018
mulsd 0x1d38(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %ecx
movslq %ecx, %r14
movsd 0x838(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x639f
movl $0x59, %edx
movq 0x4c6d(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1c75(%rip), %xmm3     # 0x8008
movapd 0x1d05(%rip), %xmm2     # 0x80a0
xorl %eax, %eax
jmp 0x63b9
addsd %xmm3, %xmm0
mulsd 0x1c6d(%rip), %xmm0     # 0x8018
mulsd 0x1cdd(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %eax
cltq
imulq $0xfa0, %r14, %rcx      # imm = 0xFA0
addq -0x38(%rbp), %rcx
incl (%rcx,%rax,4)
incq %r12
movq 0xb4e8c0(%rbx), %rax
movslq 0x3208(%rax), %rax
addq $0x870, %r13            # imm = 0x870
cmpq %rax, %r12
jl 0x6081
movl -0x2c(%rbp), %eax
addl %eax, 0x7a50a4(%rbx)
addl %eax, 0x7a50a8(%rbx)
addl %eax, 0x7a50ac(%rbx)
addl %eax, 0x7a50b0(%rbx)
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq