// File: /workspace/github_c_makefile_star2_O3/halcy[P]quasi_crystals_bot/Vector/MatrixDouble.h
// Function: dmat4x3affineinverse
static inline double dmat4x3affinedet(dmat4x3_t m)
{
	return dmat4x3_11(m)*dmat4x3_22(m)*dmat4x3_33(m)
	      -dmat4x3_11(m)*dmat4x3_32(m)*dmat4x3_23(m)
	      +dmat4x3_21(m)*dmat4x3_32(m)*dmat4x3_13(m)
	      -dmat4x3_21(m)*dmat4x3_12(m)*dmat4x3_33(m)
	      +dmat4x3_31(m)*dmat4x3_12(m)*dmat4x3_23(m)
	      -dmat4x3_31(m)*dmat4x3_22(m)*dmat4x3_13(m);
}

// Assembly:
movupd 0x30(%rsp), %xmm3
movupd 0x40(%rsp), %xmm10
movsd 0x18(%rsp), %xmm8
movsd 0x20(%rsp), %xmm7
movsd 0x28(%rsp), %xmm1
movsd 0x10(%rsp), %xmm2
movddup 0x48(%rsp), %xmm13      # xmm13 = mem[0,0]
movsd 0x8(%rsp), %xmm14
movsd 0x38(%rsp), %xmm5
movq %rdi, %rax
movapd %xmm8, %xmm0
movapd %xmm7, %xmm9
movddup %xmm14, %xmm11          # xmm11 = xmm14[0,0]
movapd %xmm5, %xmm12
movapd %xmm8, %xmm6
unpcklpd %xmm8, %xmm5            # xmm5 = xmm5[0],xmm8[0]
mulsd %xmm1, %xmm0
unpcklpd %xmm2, %xmm9            # xmm9 = xmm9[0],xmm2[0]
mulsd %xmm7, %xmm6
movapd %xmm3, %xmm4
movapd %xmm3, %xmm15
unpcklpd %xmm10, %xmm12          # xmm12 = xmm12[0],xmm10[0]
movsd %xmm10, %xmm4           # xmm4 = xmm10[0],xmm4[1]
unpcklpd %xmm1, %xmm15           # xmm15 = xmm15[0],xmm1[0]
unpcklpd %xmm14, %xmm1           # xmm1 = xmm1[0],xmm14[0]
mulpd %xmm9, %xmm4
mulpd %xmm13, %xmm9
mulpd %xmm15, %xmm11
mulpd %xmm1, %xmm12
mulpd %xmm13, %xmm1
movapd %xmm0, -0x18(%rsp)
movapd %xmm7, %xmm0
mulsd %xmm2, %xmm0
mulsd %xmm3, %xmm2
unpcklpd %xmm2, %xmm7            # xmm7 = xmm7[0],xmm2[0]
movapd %xmm0, -0x28(%rsp)
movddup %xmm8, %xmm0            # xmm0 = xmm8[0,0]
subsd -0x18(%rsp), %xmm2
movapd %xmm9, %xmm15
movapd %xmm12, %xmm14
subsd %xmm11, %xmm6
unpckhpd %xmm3, %xmm15           # xmm15 = xmm15[1],xmm3[1]
unpcklpd %xmm4, %xmm14           # xmm14 = xmm14[0],xmm4[0]
subpd %xmm12, %xmm4
mulpd %xmm7, %xmm15
movapd %xmm11, %xmm7
mulpd %xmm14, %xmm0
unpckhpd %xmm11, %xmm11          # xmm11 = xmm11[1,1]
mulpd %xmm10, %xmm7
subsd -0x28(%rsp), %xmm11
addpd %xmm7, %xmm15
movsd 0x1122(%rip), %xmm7     # 0xe050
addpd %xmm15, %xmm0
movapd %xmm0, %xmm14
unpckhpd %xmm0, %xmm14           # xmm14 = xmm14[1],xmm0[1]
subsd %xmm0, %xmm14
movapd %xmm10, %xmm0
unpcklpd %xmm8, %xmm0            # xmm0 = xmm0[0],xmm8[0]
movupd 0x50(%rsp), %xmm8
mulpd %xmm3, %xmm0
unpcklpd %xmm10, %xmm3           # xmm3 = xmm3[0],xmm10[0]
mulpd %xmm5, %xmm3
movapd %xmm8, %xmm5
divsd %xmm14, %xmm7
shufpd $0x1, %xmm8, %xmm5      # xmm5 = xmm5[1],xmm8[0]
subpd %xmm0, %xmm1
subpd %xmm9, %xmm3
movddup %xmm7, %xmm0            # xmm0 = xmm7[0,0]
mulsd %xmm7, %xmm2
mulsd %xmm7, %xmm6
mulsd %xmm11, %xmm7
mulpd %xmm0, %xmm1
mulpd %xmm0, %xmm3
mulpd %xmm0, %xmm4
movapd %xmm1, %xmm0
mulpd %xmm3, %xmm5
movsd %xmm3, %xmm0            # xmm0 = xmm3[0],xmm0[1]
movsd %xmm1, %xmm3            # xmm3 = xmm1[0],xmm3[1]
mulpd %xmm8, %xmm1
movupd %xmm3, (%rdi)
movsd 0x60(%rsp), %xmm3
movupd %xmm0, 0x18(%rdi)
movupd %xmm4, 0x30(%rdi)
movsd %xmm2, 0x10(%rdi)
movsd %xmm6, 0x28(%rdi)
mulsd %xmm8, %xmm2
mulsd 0x58(%rsp), %xmm6
movsd %xmm7, 0x40(%rdi)
movddup %xmm3, %xmm0            # xmm0 = xmm3[0,0]
mulsd %xmm3, %xmm7
mulpd %xmm4, %xmm0
addsd %xmm6, %xmm2
addpd %xmm5, %xmm1
addsd %xmm2, %xmm7
addpd %xmm1, %xmm0
movapd 0x1313(%rip), %xmm1     # 0xe310
xorpd %xmm1, %xmm7
xorpd %xmm1, %xmm0
movupd %xmm0, 0x48(%rdi)
movlpd %xmm7, 0x58(%rdi)
retq