// File: Luthaf[P]zeopp/voro++/src/v_compute.cc
// Function: bool voro::voro_compute<voro::container>::edge_y_test<voro::voronoicell>(voro::voronoicell&, double, double, double, double, double, double)
inline bool voro_compute<c_class>::edge_y_test(v_cell &c,double xl,double y0,double zl,double xh,double y1,double zh) {
	con.r_prime(xl*xl+zl*zl);
	if(c.plane_intersects_guess(xl,y0,zh,con.r_cutoff(xl*xl+zl*zh))) return false;
	if(c.plane_intersects(xl,y1,zh,con.r_cutoff(xl*xl+zl*zh))) return false;
	if(c.plane_intersects(xl,y1,zl,con.r_cutoff(xl*xl+zl*zl))) return false;
	if(c.plane_intersects(xl,y0,zl,con.r_cutoff(xl*xl+zl*zl))) return false;
	if(c.plane_intersects(xh,y0,zl,con.r_cutoff(xl*xh+zl*zl))) return false;
	if(c.plane_intersects(xh,y1,zl,con.r_cutoff(xl*xh+zl*zl))) return false;
	return true;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x110, %rsp            # imm = 0x110
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movsd %xmm0, -0x20(%rbp)
movsd %xmm1, -0x28(%rbp)
movsd %xmm2, -0x30(%rbp)
movsd %xmm3, -0x38(%rbp)
movsd %xmm4, -0x40(%rbp)
movsd %xmm5, -0x48(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x70(%rbp)
movq (%rax), %rdi
movsd -0x20(%rbp), %xmm0
movsd -0x20(%rbp), %xmm2
movsd -0x30(%rbp), %xmm1
mulsd -0x30(%rbp), %xmm1
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
callq 0x49820
movq -0x70(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, -0x68(%rbp)
movsd -0x20(%rbp), %xmm0
movsd %xmm0, -0x50(%rbp)
movsd -0x28(%rbp), %xmm0
movsd %xmm0, -0x60(%rbp)
movsd -0x48(%rbp), %xmm0
movsd %xmm0, -0x58(%rbp)
movq (%rax), %rdi
movsd -0x20(%rbp), %xmm0
movsd -0x20(%rbp), %xmm2
movsd -0x30(%rbp), %xmm1
mulsd -0x48(%rbp), %xmm1
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
callq 0x49830
movq -0x68(%rbp), %rdi
movsd -0x60(%rbp), %xmm1
movsd -0x58(%rbp), %xmm2
movaps %xmm0, %xmm3
movsd -0x50(%rbp), %xmm0
callq 0xd600
testb $0x1, %al
jne 0x2477c
jmp 0x24785
movb $0x0, -0x1(%rbp)
jmp 0x24a4a
movq -0x70(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, -0x90(%rbp)
movsd -0x20(%rbp), %xmm0
movsd %xmm0, -0x78(%rbp)
movsd -0x40(%rbp), %xmm0
movsd %xmm0, -0x88(%rbp)
movsd -0x48(%rbp), %xmm0
movsd %xmm0, -0x80(%rbp)
movq (%rax), %rdi
movsd -0x20(%rbp), %xmm0
movsd -0x20(%rbp), %xmm2
movsd -0x30(%rbp), %xmm1
mulsd -0x48(%rbp), %xmm1
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
callq 0x49830
movq -0x90(%rbp), %rdi
movsd -0x88(%rbp), %xmm1
movsd -0x80(%rbp), %xmm2
movaps %xmm0, %xmm3
movsd -0x78(%rbp), %xmm0
callq 0xd530
testb $0x1, %al
jne 0x24800
jmp 0x24809
movb $0x0, -0x1(%rbp)
jmp 0x24a4a
movq -0x70(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, -0xb0(%rbp)
movsd -0x20(%rbp), %xmm0
movsd %xmm0, -0x98(%rbp)
movsd -0x40(%rbp), %xmm0
movsd %xmm0, -0xa8(%rbp)
movsd -0x30(%rbp), %xmm0
movsd %xmm0, -0xa0(%rbp)
movq (%rax), %rdi
movsd -0x20(%rbp), %xmm0
movsd -0x20(%rbp), %xmm2
movsd -0x30(%rbp), %xmm1
mulsd -0x30(%rbp), %xmm1
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
callq 0x49830
movq -0xb0(%rbp), %rdi
movsd -0xa8(%rbp), %xmm1
movsd -0xa0(%rbp), %xmm2
movaps %xmm0, %xmm3
movsd -0x98(%rbp), %xmm0
callq 0xd530
testb $0x1, %al
jne 0x24890
jmp 0x24899
movb $0x0, -0x1(%rbp)
jmp 0x24a4a
movq -0x70(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, -0xd0(%rbp)
movsd -0x20(%rbp), %xmm0
movsd %xmm0, -0xb8(%rbp)
movsd -0x28(%rbp), %xmm0
movsd %xmm0, -0xc8(%rbp)
movsd -0x30(%rbp), %xmm0
movsd %xmm0, -0xc0(%rbp)
movq (%rax), %rdi
movsd -0x20(%rbp), %xmm0
movsd -0x20(%rbp), %xmm2
movsd -0x30(%rbp), %xmm1
mulsd -0x30(%rbp), %xmm1
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
callq 0x49830
movq -0xd0(%rbp), %rdi
movsd -0xc8(%rbp), %xmm1
movsd -0xc0(%rbp), %xmm2
movaps %xmm0, %xmm3
movsd -0xb8(%rbp), %xmm0
callq 0xd530
testb $0x1, %al
jne 0x24920
jmp 0x24929
movb $0x0, -0x1(%rbp)
jmp 0x24a4a
movq -0x70(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, -0xf0(%rbp)
movsd -0x38(%rbp), %xmm0
movsd %xmm0, -0xd8(%rbp)
movsd -0x28(%rbp), %xmm0
movsd %xmm0, -0xe8(%rbp)
movsd -0x30(%rbp), %xmm0
movsd %xmm0, -0xe0(%rbp)
movq (%rax), %rdi
movsd -0x20(%rbp), %xmm0
movsd -0x38(%rbp), %xmm2
movsd -0x30(%rbp), %xmm1
mulsd -0x30(%rbp), %xmm1
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
callq 0x49830
movq -0xf0(%rbp), %rdi
movsd -0xe8(%rbp), %xmm1
movsd -0xe0(%rbp), %xmm2
movaps %xmm0, %xmm3
movsd -0xd8(%rbp), %xmm0
callq 0xd530
testb $0x1, %al
jne 0x249b0
jmp 0x249b9
movb $0x0, -0x1(%rbp)
jmp 0x24a4a
movq -0x70(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, -0x110(%rbp)
movsd -0x38(%rbp), %xmm0
movsd %xmm0, -0xf8(%rbp)
movsd -0x40(%rbp), %xmm0
movsd %xmm0, -0x108(%rbp)
movsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x100(%rbp)
movq (%rax), %rdi
movsd -0x20(%rbp), %xmm0
movsd -0x38(%rbp), %xmm2
movsd -0x30(%rbp), %xmm1
mulsd -0x30(%rbp), %xmm1
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
callq 0x49830
movq -0x110(%rbp), %rdi
movsd -0x108(%rbp), %xmm1
movsd -0x100(%rbp), %xmm2
movaps %xmm0, %xmm3
movsd -0xf8(%rbp), %xmm0
callq 0xd530
testb $0x1, %al
jne 0x24a40
jmp 0x24a46
movb $0x0, -0x1(%rbp)
jmp 0x24a4a
movb $0x1, -0x1(%rbp)
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0x110, %rsp            # imm = 0x110
popq %rbp
retq
nopl (%rax,%rax)