// File: /workspace/github_c_makefile_star2_O3/PoulinV[P]AxiCLASS/build/../tools/quadrature.c
// Function: cubature_order_eleven
int cubature_order_eleven(
			  double xl,
			  double xr,
			  double yl,
			  double yr,
			  double *x,
			  double *y,
			  double *w,
			  ErrorMsg error_message){

  double wi[6]={0.48020763350723814563e-01,
		0.66071329164550595674e-01,
		0.97386777358668164196e-01,
		0.21173634999894860050e+00,
		0.22562606172886338740e+00,
		0.35115871839824543766e+00};
  double xi[6]={0.98263922354085547295e+00,
		0.82577583590296393730e+00,
		0.18858613871864195460e+00,
		0.81252054830481310049e+00,
		0.52532025036454776234e+00,
		0.41658071912022368274e-01};
  double yi[6]={0.69807610454956756478e+00,
		0.93948638281673690721e+00,
		0.95353952820153201585e+00,
		0.31562343291525419599e+00,
		0.71200191307533630655e+00,
		0.42484724884866925062e+00};

  int idx,i;
  double a1,a2,b1,b2;

  a1 = 2./(xr-xl);
  a2 = 2./(yr-yl);
  b1 = 1.-2*xr/(xr-xl);
  b2 = 1.-2*yr/(yr-yl);

  for (i=0,idx=0; i<6; i++,idx++){
    // Upper right corner:
    x[idx] = (xi[i]-b1)/a1;
    y[idx] = (yi[i]-b2)/a2;
    w[idx] = wi[i]/a1/a2;
  }
  for (i=0,idx=6; i<6; i++,idx++){
    // Upper left corner:
    x[idx] = (-yi[i]-b1)/a1;
    y[idx] = (xi[i]-b2)/a2;
    w[idx] = wi[i]/a1/a2;
  }
  for (i=0,idx=12; i<6; i++,idx++){
    // Lower left corner:
    x[idx] = (-xi[i]-b1)/a1;
    y[idx] = (-yi[i]-b2)/a2;
    w[idx] = wi[i]/a1/a2;
  }
  for (i=0,idx=18; i<6; i++,idx++){
    // Lower right corner:
    x[idx] = (yi[i]-b1)/a1;
    y[idx] = (-xi[i]-b2)/a2;
    w[idx] = wi[i]/a1/a2;
  }



  return _SUCCESS_;
}

// Assembly:
subq $0x18, %rsp
movaps 0xcf225(%rip), %xmm4    # 0xf1180
movaps %xmm4, -0x20(%rsp)
movaps 0xcf229(%rip), %xmm4    # 0xf1190
movaps %xmm4, -0x10(%rsp)
movaps 0xcf22d(%rip), %xmm4    # 0xf11a0
movaps %xmm4, (%rsp)
movaps 0xcf232(%rip), %xmm4    # 0xf11b0
movaps %xmm4, -0x50(%rsp)
movaps 0xcf236(%rip), %xmm4    # 0xf11c0
movaps %xmm4, -0x40(%rsp)
movaps 0xcf23a(%rip), %xmm4    # 0xf11d0
movaps %xmm4, -0x30(%rsp)
movaps 0xcf23e(%rip), %xmm4    # 0xf11e0
movaps %xmm4, -0x80(%rsp)
movaps 0xcf242(%rip), %xmm4    # 0xf11f0
movaps %xmm4, -0x70(%rsp)
movaps 0xcf246(%rip), %xmm4    # 0xf1200
movaps %xmm4, -0x60(%rsp)
movapd %xmm1, %xmm5
subsd %xmm0, %xmm5
movsd 0xccd31(%rip), %xmm0    # 0xeed00
movapd %xmm0, %xmm4
divsd %xmm5, %xmm4
movapd %xmm3, %xmm6
subsd %xmm2, %xmm6
divsd %xmm6, %xmm0
addsd %xmm1, %xmm1
divsd %xmm5, %xmm1
movsd 0xcc26d(%rip), %xmm2    # 0xee260
movapd %xmm2, %xmm5
subsd %xmm1, %xmm5
addsd %xmm3, %xmm3
divsd %xmm6, %xmm3
subsd %xmm3, %xmm2
xorl %eax, %eax
movsd -0x50(%rsp,%rax), %xmm1
subsd %xmm5, %xmm1
divsd %xmm4, %xmm1
movsd %xmm1, (%rdi,%rax)
movsd -0x80(%rsp,%rax), %xmm1
subsd %xmm2, %xmm1
divsd %xmm0, %xmm1
movsd %xmm1, (%rsi,%rax)
movsd -0x20(%rsp,%rax), %xmm1
divsd %xmm4, %xmm1
divsd %xmm0, %xmm1
movsd %xmm1, (%rdx,%rax)
addq $0x8, %rax
cmpq $0x30, %rax
jne 0x22009
xorl %eax, %eax
movapd 0xcc1da(%rip), %xmm1    # 0xee230
movsd -0x80(%rsp,%rax), %xmm3
xorpd %xmm1, %xmm3
subsd %xmm5, %xmm3
divsd %xmm4, %xmm3
movsd %xmm3, 0x30(%rdi,%rax)
movsd -0x50(%rsp,%rax), %xmm3
subsd %xmm2, %xmm3
divsd %xmm0, %xmm3
movsd %xmm3, 0x30(%rsi,%rax)
movsd -0x20(%rsp,%rax), %xmm3
divsd %xmm4, %xmm3
divsd %xmm0, %xmm3
movsd %xmm3, 0x30(%rdx,%rax)
addq $0x8, %rax
cmpq $0x30, %rax
jne 0x22056
xorl %eax, %eax
movapd 0xcc186(%rip), %xmm3    # 0xee230
movsd -0x50(%rsp,%rax), %xmm6
xorpd %xmm3, %xmm6
subsd %xmm5, %xmm6
divsd %xmm4, %xmm6
movsd %xmm6, 0x60(%rdi,%rax)
movsd -0x80(%rsp,%rax), %xmm6
xorpd %xmm3, %xmm6
subsd %xmm2, %xmm6
divsd %xmm0, %xmm6
movsd %xmm6, 0x60(%rsi,%rax)
movsd -0x20(%rsp,%rax), %xmm6
divsd %xmm4, %xmm6
divsd %xmm0, %xmm6
movsd %xmm6, 0x60(%rdx,%rax)
addq $0x8, %rax
cmpq $0x30, %rax
jne 0x220aa
xorl %eax, %eax
movsd -0x80(%rsp,%rax), %xmm3
subsd %xmm5, %xmm3
divsd %xmm4, %xmm3
movsd %xmm3, 0x90(%rdi,%rax)
movsd -0x50(%rsp,%rax), %xmm3
xorpd %xmm1, %xmm3
subsd %xmm2, %xmm3
divsd %xmm0, %xmm3
movsd %xmm3, 0x90(%rsi,%rax)
movsd -0x20(%rsp,%rax), %xmm3
divsd %xmm4, %xmm3
divsd %xmm0, %xmm3
movsd %xmm3, 0x90(%rdx,%rax)
addq $0x8, %rax
cmpq $0x30, %rax
jne 0x220fa
xorl %eax, %eax
addq $0x18, %rsp
retq