// File: /workspace/github_cpp_makefile_star2_O1/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 0x6537
leaq 0x3ea4(%rbx), %rax
movq %rax, -0x40(%rbp)
leaq 0x3d47a4(%rbx), %rax
movq %rax, -0x38(%rbp)
xorl %r13d, %r13d
movapd 0x1edd(%rip), %xmm2     # 0x80a0
movsd 0x1e3d(%rip), %xmm3     # 0x8008
leaq 0x2136(%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 0x621c
movl $0x59, %edx
movq 0x4df0(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1df8(%rip), %xmm3     # 0x8008
movapd 0x1e88(%rip), %xmm2     # 0x80a0
xorl %eax, %eax
jmp 0x6236
addsd %xmm3, %xmm0
mulsd 0x1df0(%rip), %xmm0     # 0x8018
mulsd 0x1e60(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %eax
cltq
incl 0x24(%rbx,%rax,4)
movq 0xb4e8b8(%rbx), %rax
movsd 0x818(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x6281
movl $0x59, %edx
movq 0x4d8b(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1d93(%rip), %xmm3     # 0x8008
movapd 0x1e23(%rip), %xmm2     # 0x80a0
xorl %eax, %eax
jmp 0x629b
addsd %xmm3, %xmm0
mulsd 0x1d8b(%rip), %xmm0     # 0x8018
mulsd 0x1dfb(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %eax
cltq
incl 0xfc4(%rbx,%rax,4)
movq 0xb4e8b8(%rbx), %rax
movsd 0x840(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x62e9
movl $0x59, %edx
movq 0x4d23(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1d2b(%rip), %xmm3     # 0x8008
movapd 0x1dbb(%rip), %xmm2     # 0x80a0
xorl %eax, %eax
jmp 0x6303
addsd %xmm3, %xmm0
mulsd 0x1d23(%rip), %xmm0     # 0x8018
mulsd 0x1d93(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %eax
cltq
incl 0x1f64(%rbx,%rax,4)
movq 0xb4e8b8(%rbx), %rax
movsd 0x838(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x6351
movl $0x59, %edx
movq 0x4cbb(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1cc3(%rip), %xmm3     # 0x8008
movapd 0x1d53(%rip), %xmm2     # 0x80a0
xorl %eax, %eax
jmp 0x636b
addsd %xmm3, %xmm0
mulsd 0x1cbb(%rip), %xmm0     # 0x8018
mulsd 0x1d2b(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %eax
cltq
incl 0x2f04(%rbx,%rax,4)
movq 0xb4e8b8(%rbx), %rax
movsd 0x820(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x63ba
movl $0x59, %edx
movq 0x4c53(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1c5b(%rip), %xmm3     # 0x8008
movapd 0x1ceb(%rip), %xmm2     # 0x80a0
xorl %r14d, %r14d
jmp 0x63d5
addsd %xmm3, %xmm0
mulsd 0x1c52(%rip), %xmm0     # 0x8018
mulsd 0x1cc2(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %eax
movslq %eax, %r14
movq 0xb4e8b8(%rbx), %rax
movsd 0x818(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x641c
movl $0x59, %edx
movq 0x4bf0(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1bf8(%rip), %xmm3     # 0x8008
movapd 0x1c88(%rip), %xmm2     # 0x80a0
xorl %eax, %eax
jmp 0x6436
addsd %xmm3, %xmm0
mulsd 0x1bf0(%rip), %xmm0     # 0x8018
mulsd 0x1c60(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %eax
cltq
imulq $0xfa0, %r14, %rcx      # imm = 0xFA0
addq -0x40(%rbp), %rcx
incl (%rcx,%rax,4)
movq 0xb4e8b8(%rbx), %rax
movsd 0x840(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x648c
movl $0x59, %edx
movq 0x4b81(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1b89(%rip), %xmm3     # 0x8008
movapd 0x1c19(%rip), %xmm2     # 0x80a0
xorl %r14d, %r14d
jmp 0x64a7
addsd %xmm3, %xmm0
mulsd 0x1b80(%rip), %xmm0     # 0x8018
mulsd 0x1bf0(%rip), %xmm0     # 0x8090
cvttsd2si %xmm0, %eax
movslq %eax, %r14
movq 0xb4e8b8(%rbx), %rax
movsd 0x838(%rax,%r13), %xmm0
movapd %xmm0, %xmm1
andpd %xmm2, %xmm1
ucomisd %xmm3, %xmm1
jbe 0x64ee
movl $0x59, %edx
movq 0x4b1e(%rip), %rdi      # 0xaff0
movq %r15, %rsi
callq 0x21f0
movsd 0x1b26(%rip), %xmm3     # 0x8008
movapd 0x1bb6(%rip), %xmm2     # 0x80a0
xorl %eax, %eax
jmp 0x6508
addsd %xmm3, %xmm0
mulsd 0x1b1e(%rip), %xmm0     # 0x8018
mulsd 0x1b8e(%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 0x61d5
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
nop