// File: /workspace/github_c_makefile_star2_O0/halcy[P]quasi_crystals_bot/Vector/Matrix.h
// Function: mat3x3det
static inline float mat3x3det(mat3x3_t m)
{
	return mat3x3_11(m)*mat3x3_22(m)*mat3x3_33(m)
	      -mat3x3_11(m)*mat3x3_32(m)*mat3x3_23(m)
	      +mat3x3_21(m)*mat3x3_32(m)*mat3x3_13(m)
	      -mat3x3_21(m)*mat3x3_12(m)*mat3x3_33(m)
	      +mat3x3_31(m)*mat3x3_12(m)*mat3x3_23(m)
	      -mat3x3_31(m)*mat3x3_22(m)*mat3x3_13(m);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq -0x80(%rsp), %rsp
leaq 0x10(%rbp), %rcx
movq %rcx, -0x18(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10ba0
movq -0x18(%rbp), %rcx
movss %xmm0, -0x50(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10bb0
movq -0x18(%rbp), %rcx
movaps %xmm0, %xmm1
movss -0x50(%rbp), %xmm0
mulss %xmm1, %xmm0
movss %xmm0, -0x4c(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10bc0
movq -0x18(%rbp), %rcx
movaps %xmm0, %xmm1
movss -0x4c(%rbp), %xmm0
mulss %xmm1, %xmm0
movss %xmm0, -0x40(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10ba0
movq -0x18(%rbp), %rcx
movss %xmm0, -0x48(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10bd0
movq -0x18(%rbp), %rcx
movaps %xmm0, %xmm1
movss -0x48(%rbp), %xmm0
mulss %xmm1, %xmm0
movss %xmm0, -0x44(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10be0
movss -0x44(%rbp), %xmm1
movq -0x18(%rbp), %rcx
movaps %xmm0, %xmm2
movss -0x40(%rbp), %xmm0
mulss %xmm2, %xmm1
subss %xmm1, %xmm0
movss %xmm0, -0x34(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10bf0
movq -0x18(%rbp), %rcx
movss %xmm0, -0x3c(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10bd0
movq -0x18(%rbp), %rcx
movaps %xmm0, %xmm1
movss -0x3c(%rbp), %xmm0
mulss %xmm1, %xmm0
movss %xmm0, -0x38(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10c00
movss -0x38(%rbp), %xmm1
movq -0x18(%rbp), %rcx
movaps %xmm0, %xmm2
movss -0x34(%rbp), %xmm0
mulss %xmm2, %xmm1
addss %xmm1, %xmm0
movss %xmm0, -0x28(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10bf0
movq -0x18(%rbp), %rcx
movss %xmm0, -0x30(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10c10
movq -0x18(%rbp), %rcx
movaps %xmm0, %xmm1
movss -0x30(%rbp), %xmm0
mulss %xmm1, %xmm0
movss %xmm0, -0x2c(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10bc0
movss -0x2c(%rbp), %xmm1
movq -0x18(%rbp), %rcx
movaps %xmm0, %xmm2
movss -0x28(%rbp), %xmm0
mulss %xmm2, %xmm1
subss %xmm1, %xmm0
movss %xmm0, -0x1c(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10c20
movq -0x18(%rbp), %rcx
movss %xmm0, -0x24(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10c10
movq -0x18(%rbp), %rcx
movaps %xmm0, %xmm1
movss -0x24(%rbp), %xmm0
mulss %xmm1, %xmm0
movss %xmm0, -0x20(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10be0
movss -0x20(%rbp), %xmm1
movq -0x18(%rbp), %rcx
movaps %xmm0, %xmm2
movss -0x1c(%rbp), %xmm0
mulss %xmm2, %xmm1
addss %xmm1, %xmm0
movss %xmm0, -0x4(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10c20
movq -0x18(%rbp), %rcx
movss %xmm0, -0xc(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10bb0
movq -0x18(%rbp), %rcx
movaps %xmm0, %xmm1
movss -0xc(%rbp), %xmm0
mulss %xmm1, %xmm0
movss %xmm0, -0x8(%rbp)
movl 0x20(%rcx), %edx
movq %rsp, %rax
movl %edx, 0x20(%rax)
movups (%rcx), %xmm0
movups 0x10(%rcx), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x10c00
movss -0x8(%rbp), %xmm1
movaps %xmm0, %xmm2
movss -0x4(%rbp), %xmm0
mulss %xmm2, %xmm1
subss %xmm1, %xmm0
leaq 0x80(%rsp), %rsp
popq %rbp
retq
nopl (%rax)