// File: /workspace/github_cpp_makefile_star2_O2/lvandeve[P]lodepng/lodepng_unittest.cpp
// Function: testOtherPattern1()
void testOtherPattern1() {
  std::cout << "codec other pattern 1" << std::endl;

  Image image1;
  size_t w = 192;
  size_t h = 192;
  image1.width = w;
  image1.height = h;
  image1.colorType = LCT_RGBA;
  image1.bitDepth = 8;
  image1.data.resize(w * h * 4u);
  for(size_t y = 0; y < h; y++)
  for(size_t x = 0; x < w; x++) {
    //pattern 1
    image1.data[4u * w * y + 4u * x + 0u] = (unsigned char)(127 * (1 + std::sin((                    x * x +                     y * y) / (w * h / 8.0))));
    image1.data[4u * w * y + 4u * x + 1u] = (unsigned char)(127 * (1 + std::sin(((w - x - 1) * (w - x - 1) +                     y * y) / (w * h / 8.0))));
    image1.data[4u * w * y + 4u * x + 2u] = (unsigned char)(127 * (1 + std::sin((                    x * x + (h - y - 1) * (h - y - 1)) / (w * h / 8.0))));
    image1.data[4u * w * y + 4u * x + 3u] = (unsigned char)(127 * (1 + std::sin(((w - x - 1) * (w - x - 1) + (h - y - 1) * (h - y - 1)) / (w * h / 8.0))));
  }

  doCodecTest(image1);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq 0x8b135(%rip), %rdi     # 0xa2fd8
leaq 0x485d4(%rip), %rsi     # 0x6047e
callq 0x21f0
movq %rax, %rdi
callq 0x2100
leaq 0x20(%rsp), %rdi
andq $0x0, 0x10(%rdi)
xorps %xmm0, %xmm0
movaps %xmm0, (%rdi)
movapd 0x48141(%rip), %xmm0    # 0x60010
movupd %xmm0, 0x18(%rdi)
movl $0x24000, %esi          # imm = 0x24000
xorl %edx, %edx
callq 0xe6d8
xorl %ebx, %ebx
xorl %eax, %eax
cmpq $0xc0, %rax
je 0x18046
movq %rax, %rcx
imulq %rax, %rcx
movq %rcx, 0x18(%rsp)
movl $0xbf, %r15d
movl $0xbf, %ecx
movq %rax, 0x8(%rsp)
subq %rax, %rcx
imulq %rcx, %rcx
movq %rcx, 0x10(%rsp)
xorl %r14d, %r14d
cmpq $0xc0, %r14
je 0x18032
movq %r14, %rbp
imulq %r14, %rbp
movq 0x18(%rsp), %r13
movq %rbp, %rax
addq %r13, %rax
cvtsi2sd %rax, %xmm0
movsd 0x481b9(%rip), %xmm1    # 0x60100
divsd %xmm1, %xmm0
callq 0x2070
movsd 0x47fa0(%rip), %xmm1    # 0x5fef8
addsd %xmm1, %xmm0
movsd 0x481a4(%rip), %xmm1    # 0x60108
mulsd %xmm1, %xmm0
cvttsd2si %xmm0, %eax
movq 0x20(%rsp), %rcx
addq %rbx, %rcx
movb %al, (%rcx,%r14,4)
movq %r15, %r12
imulq %r15, %r12
leaq (%r12,%r13), %rax
cvtsi2sd %rax, %xmm0
divsd 0x48170(%rip), %xmm0    # 0x60100
callq 0x2070
addsd 0x47f5b(%rip), %xmm0    # 0x5fef8
mulsd 0x48163(%rip), %xmm0    # 0x60108
cvttsd2si %xmm0, %eax
movq 0x20(%rsp), %rcx
addq %rbx, %rcx
movb %al, 0x1(%rcx,%r14,4)
movq 0x10(%rsp), %r13
addq %r13, %rbp
cvtsi2sd %rbp, %xmm0
divsd 0x48135(%rip), %xmm0    # 0x60100
callq 0x2070
addsd 0x47f20(%rip), %xmm0    # 0x5fef8
mulsd 0x48128(%rip), %xmm0    # 0x60108
cvttsd2si %xmm0, %eax
movq 0x20(%rsp), %rcx
addq %rbx, %rcx
movb %al, 0x2(%rcx,%r14,4)
addq %r13, %r12
cvtsi2sd %r12, %xmm0
divsd 0x480ff(%rip), %xmm0    # 0x60100
callq 0x2070
addsd 0x47eea(%rip), %xmm0    # 0x5fef8
mulsd 0x480f2(%rip), %xmm0    # 0x60108
cvttsd2si %xmm0, %eax
movq 0x20(%rsp), %rcx
addq %rbx, %rcx
movb %al, 0x3(%rcx,%r14,4)
incq %r14
decq %r15
jmp 0x17f1b
movq 0x8(%rsp), %rax
incq %rax
addq $0x300, %rbx            # imm = 0x300
jmp 0x17ee4
leaq 0x20(%rsp), %rdi
callq 0x178ce
leaq 0x20(%rsp), %rdi
callq 0xea7c
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
callq 0xea7c
movq %rbx, %rdi
callq 0x2380
movq %rax, %rdi
callq 0xe6cc