// File: /workspace/github_c_makefile_star2_O3/josch[P]stride/fillasn.c
// Function: FilterAntiPar
void FilterAntiPar(PATTERN **Pat, int NPat)
{
 
  register int i, j;
  int I1A, I1D, I2A, I2D, J1A, J1D, J2A, J2D;
  char I1ACn, I1DCn, I2ACn, I2DCn, J1ACn, J1DCn, J2ACn, J2DCn;

  for( i=0; i<NPat; i++ ) {
    
    if( !Pat[i]->ExistPattern ) continue;

    Alias(&I1D,&I1A,&I2D,&I2A,&I1DCn,&I1ACn,&I2DCn,&I2ACn,Pat[i]);
    
    for( j=0; j<NPat; j++ ) {
      
      if( j == i || !Pat[j]->ExistPattern ) continue;
      
      Alias(&J1D,&J1A,&J2D,&J2A,&J1DCn,&J1ACn,&J2DCn,&J2ACn,Pat[j]);
      
      if( J1D == J2A && J2D == J1A && I1D != I2A && I2D != I1A &&
	 ( (J1D == I1D && J1A == I1A) ||  (J1D == I1A && J1A == I1D) || 
	   (J1D == I2A && J1A == I2D) ||  (J1D == I2D && J1A == I2A) ) ) continue;

      if( ( ( I1D < I2A || I2D < I1A ) && 
	   ( (J1A <= I2A && J1A >= I1D && J2D <= I2A && J2D >= I1D && J2DCn == I1DCn &&
	      J2A <= I1A && J2A >= I2D && J1D <= I1A && J1D >= I2D && J1DCn == I2DCn) ||
	     (J2A <= I2A && J2A >= I1D && J1D <= I2A && J1D >= I1D && J1DCn == I1DCn &&
	      J1A <= I1A && J1A >= I2D && J2D <= I1A && J2D >= I2D && J2DCn == I2DCn) ) ) || 
	  ( ( I1D > I2A || I2D > I1A ) && 
	   ( (J1A >= I2A && J1A <= I1D && J2D >= I2A && J2D <= I1D && J2DCn == I1DCn &&
	      J2A >= I1A && J2A <= I2D && J1D >= I1A && J1D <= I2D && J1DCn == I2DCn) ||
	     (J2A >= I2A && J2A <= I1D && J1D >= I2A && J1D <= I1D && J1DCn == I1DCn &&
	      J1A >= I1A && J1A <= I2D && J2D >= I1A && J2D <= I2D && J2DCn == I2DCn) ) ) ) {
	Pat[j]->ExistPattern = NO;
      }
    }
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
movq %rdi, -0x8(%rsp)
testl %esi, %esi
jle 0xeb32
movl %esi, %eax
xorl %ecx, %ecx
movq -0x8(%rsp), %rdx
movq (%rdx,%rcx,8), %rdx
cmpl $0x0, 0x20(%rdx)
je 0xeb26
movq (%rdx), %rsi
movq 0x8(%rdx), %r8
movq (%rsi), %r10
movq 0x8(%rsi), %rsi
movl 0x8(%r10), %edx
movl 0x8(%rsi), %esi
movq (%r8), %r11
movq 0x8(%r8), %r9
movl 0x8(%r11), %edi
movl 0x8(%r9), %r9d
movq (%r10), %r10
movb 0x40(%r10), %r8b
movb %r8b, -0xb(%rsp)
movq (%r11), %r10
movb 0x40(%r10), %r8b
movb %r8b, -0xc(%rsp)
cmpl %esi, %edi
setl %r10b
setg %r11b
cmpl %r9d, %edx
setl %r8b
setg %bl
orb %r10b, %r8b
movb %r8b, -0x9(%rsp)
orb %r11b, %bl
movb %bl, -0xa(%rsp)
xorl %r14d, %r14d
cmpq %r14, %rcx
je 0xeb1a
movq -0x8(%rsp), %r8
movq (%r8,%r14,8), %r15
cmpl $0x0, 0x20(%r15)
je 0xeb1a
movq (%r15), %r10
movq 0x8(%r15), %rbx
movq (%r10), %r13
movq 0x8(%r10), %r11
movl 0x8(%r13), %r10d
movl 0x8(%r11), %r11d
movq (%rbx), %r8
movq 0x8(%rbx), %rbx
movl 0x8(%r8), %r12d
movl 0x8(%rbx), %ebx
movq (%r13), %r13
movb 0x40(%r13), %bpl
movq (%r8), %r8
movb 0x40(%r8), %r13b
cmpl %ebx, %r10d
jne 0xea2e
cmpl %r11d, %r12d
jne 0xea2e
cmpl %r9d, %edx
je 0xea2e
cmpl %esi, %edi
je 0xea2e
cmpl %edx, %r10d
jne 0xea04
cmpl %esi, %r11d
je 0xeb1a
cmpl %esi, %r10d
jne 0xea12
cmpl %edx, %r11d
je 0xeb1a
cmpl %r9d, %r10d
jne 0xea20
cmpl %edi, %r11d
je 0xeb1a
cmpl %edi, %r10d
jne 0xea2e
cmpl %r9d, %r11d
je 0xeb1a
cmpb $0x0, -0x9(%rsp)
je 0xeaa2
cmpl %r9d, %r11d
jg 0xea6d
cmpl %edx, %r11d
jl 0xea6d
cmpl %r9d, %r12d
jg 0xea6d
cmpl %edx, %r12d
jl 0xea6d
cmpb -0xb(%rsp), %r13b
jne 0xea6d
cmpl %esi, %ebx
jg 0xea6d
cmpl %edi, %ebx
jl 0xea6d
cmpl %esi, %r10d
jg 0xea6d
cmpl %edi, %r10d
jl 0xea6d
cmpb -0xc(%rsp), %bpl
je 0xeb12
cmpl %r9d, %ebx
jg 0xeaa2
cmpl %edx, %ebx
jl 0xeaa2
cmpl %r9d, %r10d
jg 0xeaa2
cmpl %edx, %r10d
jl 0xeaa2
cmpb -0xb(%rsp), %bpl
jne 0xeaa2
cmpl %esi, %r11d
jg 0xeaa2
cmpl %edi, %r11d
jl 0xeaa2
cmpl %esi, %r12d
jg 0xeaa2
cmpl %edi, %r12d
jl 0xeaa2
cmpb -0xc(%rsp), %r13b
je 0xeb12
cmpb $0x0, -0xa(%rsp)
je 0xeb1a
cmpl %r9d, %r11d
jl 0xeadd
cmpl %edx, %r11d
jg 0xeadd
cmpl %r9d, %r12d
jl 0xeadd
cmpl %edx, %r12d
jg 0xeadd
cmpb -0xb(%rsp), %r13b
jne 0xeadd
cmpl %esi, %ebx
jl 0xeadd
cmpl %edi, %ebx
jg 0xeadd
cmpl %esi, %r10d
jl 0xeadd
cmpl %edi, %r10d
jg 0xeadd
cmpb -0xc(%rsp), %bpl
je 0xeb12
cmpl %r9d, %ebx
jl 0xeb1a
cmpl %edx, %ebx
jg 0xeb1a
cmpl %r9d, %r10d
jl 0xeb1a
cmpl %edx, %r10d
jg 0xeb1a
cmpb -0xb(%rsp), %bpl
jne 0xeb1a
cmpl %esi, %r11d
jl 0xeb1a
cmpl %edi, %r11d
jg 0xeb1a
cmpl %esi, %r12d
jl 0xeb1a
cmpl %edi, %r12d
jg 0xeb1a
cmpb -0xc(%rsp), %r13b
jne 0xeb1a
movl $0x0, 0x20(%r15)
incq %r14
cmpq %r14, %rax
jne 0xe993
incq %rcx
cmpq %rax, %rcx
jne 0xe91e
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq