// File: /workspace/github_c_makefile_star2_O1/enzo1982[P]smooth/libraries/libwebp/src/dsp/dec.c
// Function: FilterLoop26_C
static WEBP_INLINE void FilterLoop26_C(uint8_t* p,
                                       int hstride, int vstride, int size,
                                       int thresh, int ithresh,
                                       int hev_thresh) {
  const int thresh2 = 2 * thresh + 1;
  while (size-- > 0) {
    if (NeedsFilter2_C(p, hstride, thresh2, ithresh)) {
      if (Hev(p, hstride, hev_thresh)) {
        DoFilter2_C(p, hstride);
      } else {
        DoFilter6_C(p, hstride);
      }
    }
    p += vstride;
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
movl %r9d, -0x64(%rsp)
testl %ecx, %ecx
jle 0xda52f
leal 0x1(,%r8,2), %r9d
movslq %esi, %rsi
leaq (%rsi,%rsi,2), %r8
movq %r8, -0x10(%rsp)
negq %r8
movq %r8, -0x20(%rsp)
leaq (%rsi,%rsi), %rbx
negq %rbx
movq %rsi, %r14
negq %r14
leal (%rsi,%rsi), %eax
cltq
movq %rax, -0x28(%rsp)
leaq 0x91d66(%rip), %rax     # 0x16bfe8
movq (%rax), %r12
leal (,%rsi,4), %eax
negl %eax
cltq
movq %rax, -0x8(%rsp)
leaq 0x91d34(%rip), %rax     # 0x16bfd0
movq (%rax), %rax
movq %rax, -0x38(%rsp)
leaq 0x91d35(%rip), %rax     # 0x16bfe0
movq (%rax), %rax
movq %rax, -0x40(%rsp)
leaq 0x91d1e(%rip), %rax     # 0x16bfd8
movq (%rax), %rax
movq %rax, -0x18(%rsp)
movslq %edx, %rdx
incl %ecx
movl %r9d, -0x4c(%rsp)
movzbl (%rdi,%rbx), %r11d
movzbl (%rdi,%r14), %r15d
movzbl (%rdi), %ebp
movzbl (%rdi,%rsi), %eax
movq %r15, %r10
subq %rbp, %r10
movzbl (%r12,%r10), %r13d
movq %r11, %r10
subq %rax, %r10
movzbl (%r12,%r10), %r8d
leal (%r8,%r13,4), %r8d
cmpl %r9d, %r8d
jg 0xda521
movq -0x20(%rsp), %r8
movzbl (%rdi,%r8), %r13d
movq -0x8(%rsp), %r8
movzbl (%rdi,%r8), %r8d
subq %r13, %r8
movzbl (%r12,%r8), %r8d
cmpl -0x64(%rsp), %r8d
jg 0xda521
movq %r13, %r8
subq %r11, %r8
movzbl (%r12,%r8), %r8d
cmpl -0x64(%rsp), %r8d
jg 0xda521
movq %r11, %r8
subq %r15, %r8
movzbl (%r12,%r8), %r8d
cmpl -0x64(%rsp), %r8d
jg 0xda521
movq -0x28(%rsp), %r8
movzbl (%rdi,%r8), %r9d
movq -0x10(%rsp), %r8
movzbl (%rdi,%r8), %r8d
movq %r9, -0x30(%rsp)
subq %r9, %r8
movl -0x4c(%rsp), %r9d
movzbl (%r12,%r8), %r8d
cmpl -0x64(%rsp), %r8d
jg 0xda521
movq -0x30(%rsp), %r8
subq %rax, %r8
movzbl (%r12,%r8), %r8d
cmpl -0x64(%rsp), %r8d
jg 0xda521
movq %rax, %r8
subq %rbp, %r8
movzbl (%r12,%r8), %r8d
cmpl -0x64(%rsp), %r8d
jg 0xda521
movq %rbx, -0x48(%rsp)
movl %r11d, %r8d
movl %r15d, %ebx
movq %rbx, -0x60(%rsp)
movq %r8, -0x58(%rsp)
subq -0x60(%rsp), %r8
movzbl (%r12,%r8), %r8d
cmpl 0x38(%rsp), %r8d
jg 0xda3f9
movl %eax, %r8d
movq %r8, -0x60(%rsp)
movl %ebp, %r8d
subq %r8, -0x60(%rsp)
movq -0x60(%rsp), %r8
movzbl (%r12,%r8), %r8d
cmpl 0x38(%rsp), %r8d
jle 0xda45e
movl %ebp, %r8d
subl %r15d, %r8d
leal (%r8,%r8,2), %r8d
movq -0x58(%rsp), %r10
subq %rax, %r10
movq -0x38(%rsp), %rax
movsbl (%rax,%r10), %eax
leal (%rax,%r8), %r10d
addl $0x4, %r10d
sarl $0x3, %r10d
movslq %r10d, %r10
movq -0x18(%rsp), %r11
movsbl (%r11,%r10), %r10d
addl %r8d, %eax
addl $0x3, %eax
sarl $0x3, %eax
cltq
movsbq (%r11,%rax), %rax
addq %r15, %rax
movq -0x40(%rsp), %r11
movb (%r11,%rax), %al
movb %al, (%rdi,%r14)
subl %r10d, %ebp
movq %rdi, %rax
movq -0x48(%rsp), %rbx
jmp 0xda517
movq %rbp, %r8
subq %r15, %r8
leaq (%r8,%r8,2), %rbx
movq -0x38(%rsp), %r8
movsbq (%r8,%r10), %r10
addq %rbx, %r10
movsbl (%r8,%r10), %r8d
movq %r8, -0x60(%rsp)
leal (%r8,%r8,8), %r8d
leal (%r8,%r8,2), %r10d
addl $0x3f, %r10d
sarl $0x7, %r10d
movslq %r10d, %r10
addq %r10, %r15
movq %r15, -0x58(%rsp)
subq %r10, %rbp
leal 0x3f(,%r8,2), %r8d
sarl $0x7, %r8d
movslq %r8d, %r8
leaq (%r8,%r11), %r10
subq %r8, %rax
movq -0x60(%rsp), %r8
leal (%r8,%r8,8), %r8d
addl $0x3f, %r8d
sarl $0x7, %r8d
movslq %r8d, %r15
addq %r15, %r13
movq -0x40(%rsp), %r8
movb (%r8,%r13), %r11b
movq -0x20(%rsp), %r13
movb %r11b, (%rdi,%r13)
movq %r8, %r11
movb (%r8,%r10), %r10b
movq -0x48(%rsp), %rbx
movb %r10b, (%rdi,%rbx)
movq -0x58(%rsp), %r8
movb (%r11,%r8), %r10b
movb %r10b, (%rdi,%r14)
movb (%r11,%rbp), %r10b
movb %r10b, (%rdi)
movb (%r11,%rax), %al
movb %al, (%rdi,%rsi)
movq -0x30(%rsp), %rbp
subl %r15d, %ebp
movq -0x28(%rsp), %rax
addq %rdi, %rax
movslq %ebp, %r8
movb (%r11,%r8), %r8b
movb %r8b, (%rax)
addq %rdx, %rdi
decl %ecx
cmpl $0x1, %ecx
jg 0xda2cc
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq