// File: /workspace/github_c_makefile_star2_O0/mishun[P]plantri/plantri.c
// Function: extend_min5_c
static EDGE*
extend_min5_c(EDGE *e, EDGE **anchor)

{
/* extends a graph in the way given by the type c extension for
   5-connected triangulations. The edge e must start at
   a vertex of degree 5.

   It returns the edge characterizing this operation. This edge as
   well as the edge pointed to by *anchor must be given to the reduction
   routine.

*/

  EDGE *e1, *e2, *e3, *e4, *e5, *e1i, *e2i, *e3i, *e4i, *e5i, *start, *run;
  int v1, v2, v3, v4, v5, origin;

  *anchor=e;

  e1=e->invers->next;
  e1i=e1->invers;
  e2=e1i->next->next;
  e2i=e2->invers;
  e3=e2i->next->next;
  e3i=e3->invers;
  e4=e3i->next->next;
  e4i=e4->invers;
  e5=e4i->next->next;
  e5i=e5->invers;

  origin=e->start;
  v1=e1->start;
  v2=e1->end;
  v3=e3->start;
  v4=e3->end;
  v5=e5->start;

  start=min5_c(nv);

  firstedge[v1]=e1;
  degree[v1]++;
  firstedge[v2]=e2;
  degree[v2]++;
  firstedge[v3]=e3;
  degree[v3]++;
  firstedge[v4]=e4;
  degree[v4]++;
  firstedge[v5]=e5;
  degree[v5]++;

  firstedge[nv]=start+10; degree[nv]=5; nv++;
  firstedge[nv]=start+16; degree[nv]=5; nv++;
  firstedge[nv]=start+23; degree[nv]=5; nv++;
  firstedge[nv]=start+28; degree[nv]=5; nv++;
  firstedge[nv]=start+35; degree[nv]=5; nv++;
  firstedge[origin]=start+32; 
  /* degree[nv]=5; is already the case */

  ne+=30;

  e1->prev=start; start->next=e1;
  run=start+1;
  e5i->next=run; run->prev=e5i; 
  run++;
  e5->prev=run; run->next=e5;
  run++;
  e4i->next=run; run->prev=e4i;
  run++;
  e4->prev=run; run->next=e4;
  run++;
  e3i->next=run; run->prev=e3i;
  run++;
  e3->prev=run; run->next=e3;
  run++;
  e2i->next=run; run->prev=e2i;
  run++;
  e2->prev=run; run->next=e2;
  run++;
  e1i->next=run; run->prev=e1i;

  start->start=(start+1)->start=(start+10)->end=(start+15)->end=v1;
  (start+8)->start=(start+9)->start=(start+14)->end=(start+32)->end=v2;
  (start+7)->start=(start+6)->start=(start+27)->end=(start+31)->end=v3;
  (start+4)->start=(start+5)->start=(start+22)->end=(start+26)->end=v4;
  (start+2)->start=(start+3)->start=(start+16)->end=(start+21)->end=v5;
  (start+8)->end=(start+13)->end=(start+39)->end=(start+28)->end=(start+7)->end=origin;
  (start+30)->start=(start+31)->start=(start+32)->start=(start+33)->start=
     (start+34)->start=origin;

  return (start+35);

}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rax
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rax
movq 0x18(%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rax
movq 0x18(%rax), %rax
movq 0x18(%rax), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x48(%rbp)
movq -0x48(%rbp), %rax
movq 0x18(%rax), %rax
movq 0x18(%rax), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x50(%rbp)
movq -0x50(%rbp), %rax
movq 0x18(%rax), %rax
movq 0x18(%rax), %rax
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x58(%rbp)
movq -0x58(%rbp), %rax
movq 0x18(%rax), %rax
movq 0x18(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x60(%rbp)
movq -0x8(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x88(%rbp)
movq -0x18(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x74(%rbp)
movq -0x18(%rbp), %rax
movl 0x4(%rax), %eax
movl %eax, -0x78(%rbp)
movq -0x28(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x7c(%rbp)
movq -0x28(%rbp), %rax
movl 0x4(%rax), %eax
movl %eax, -0x80(%rbp)
movq -0x38(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x84(%rbp)
imull $0x28, 0x23af07(%rip), %eax # 0x25a620
movslq %eax, %rcx
leaq 0x23af0d(%rip), %rax    # 0x25a630
addq $-0xc300, %rax          # imm = 0xFFFF3D00
addq $0x1e000, %rax          # imm = 0x1E000
shlq $0x6, %rcx
addq %rcx, %rax
movq %rax, -0x68(%rbp)
movq -0x18(%rbp), %rdx
movslq -0x74(%rbp), %rcx
leaq 0x1e2b7(%rip), %rax     # 0x3da00
movq %rdx, (%rax,%rcx,8)
movslq -0x74(%rbp), %rcx
leaq 0x1e4a8(%rip), %rax     # 0x3dc00
movl (%rax,%rcx,4), %edx
addl $0x1, %edx
leaq 0x1e49b(%rip), %rax     # 0x3dc00
movl %edx, (%rax,%rcx,4)
movq -0x20(%rbp), %rdx
movslq -0x78(%rbp), %rcx
leaq 0x1e289(%rip), %rax     # 0x3da00
movq %rdx, (%rax,%rcx,8)
movslq -0x78(%rbp), %rcx
leaq 0x1e47a(%rip), %rax     # 0x3dc00
movl (%rax,%rcx,4), %edx
addl $0x1, %edx
leaq 0x1e46d(%rip), %rax     # 0x3dc00
movl %edx, (%rax,%rcx,4)
movq -0x28(%rbp), %rdx
movslq -0x7c(%rbp), %rcx
leaq 0x1e25b(%rip), %rax     # 0x3da00
movq %rdx, (%rax,%rcx,8)
movslq -0x7c(%rbp), %rcx
leaq 0x1e44c(%rip), %rax     # 0x3dc00
movl (%rax,%rcx,4), %edx
addl $0x1, %edx
leaq 0x1e43f(%rip), %rax     # 0x3dc00
movl %edx, (%rax,%rcx,4)
movq -0x30(%rbp), %rdx
movslq -0x80(%rbp), %rcx
leaq 0x1e22d(%rip), %rax     # 0x3da00
movq %rdx, (%rax,%rcx,8)
movslq -0x80(%rbp), %rcx
leaq 0x1e41e(%rip), %rax     # 0x3dc00
movl (%rax,%rcx,4), %edx
addl $0x1, %edx
leaq 0x1e411(%rip), %rax     # 0x3dc00
movl %edx, (%rax,%rcx,4)
movq -0x38(%rbp), %rdx
movslq -0x84(%rbp), %rcx
leaq 0x1e1fc(%rip), %rax     # 0x3da00
movq %rdx, (%rax,%rcx,8)
movslq -0x84(%rbp), %rcx
leaq 0x1e3ea(%rip), %rax     # 0x3dc00
movl (%rax,%rcx,4), %edx
addl $0x1, %edx
leaq 0x1e3dd(%rip), %rax     # 0x3dc00
movl %edx, (%rax,%rcx,4)
movq -0x68(%rbp), %rdx
addq $0x280, %rdx            # imm = 0x280
movslq 0x23ade8(%rip), %rcx    # 0x25a620
leaq 0x1e1c1(%rip), %rax     # 0x3da00
movq %rdx, (%rax,%rcx,8)
movslq 0x23add6(%rip), %rcx    # 0x25a620
leaq 0x1e3af(%rip), %rax     # 0x3dc00
movl $0x5, (%rax,%rcx,4)
movl 0x23adc2(%rip), %eax    # 0x25a620
addl $0x1, %eax
movl %eax, 0x23adb9(%rip)    # 0x25a620
movq -0x68(%rbp), %rdx
addq $0x400, %rdx            # imm = 0x400
movslq 0x23ada7(%rip), %rcx    # 0x25a620
leaq 0x1e180(%rip), %rax     # 0x3da00
movq %rdx, (%rax,%rcx,8)
movslq 0x23ad95(%rip), %rcx    # 0x25a620
leaq 0x1e36e(%rip), %rax     # 0x3dc00
movl $0x5, (%rax,%rcx,4)
movl 0x23ad81(%rip), %eax    # 0x25a620
addl $0x1, %eax
movl %eax, 0x23ad78(%rip)    # 0x25a620
movq -0x68(%rbp), %rdx
addq $0x5c0, %rdx            # imm = 0x5C0
movslq 0x23ad66(%rip), %rcx    # 0x25a620
leaq 0x1e13f(%rip), %rax     # 0x3da00
movq %rdx, (%rax,%rcx,8)
movslq 0x23ad54(%rip), %rcx    # 0x25a620
leaq 0x1e32d(%rip), %rax     # 0x3dc00
movl $0x5, (%rax,%rcx,4)
movl 0x23ad40(%rip), %eax    # 0x25a620
addl $0x1, %eax
movl %eax, 0x23ad37(%rip)    # 0x25a620
movq -0x68(%rbp), %rdx
addq $0x700, %rdx            # imm = 0x700
movslq 0x23ad25(%rip), %rcx    # 0x25a620
leaq 0x1e0fe(%rip), %rax     # 0x3da00
movq %rdx, (%rax,%rcx,8)
movslq 0x23ad13(%rip), %rcx    # 0x25a620
leaq 0x1e2ec(%rip), %rax     # 0x3dc00
movl $0x5, (%rax,%rcx,4)
movl 0x23acff(%rip), %eax    # 0x25a620
addl $0x1, %eax
movl %eax, 0x23acf6(%rip)    # 0x25a620
movq -0x68(%rbp), %rdx
addq $0x8c0, %rdx            # imm = 0x8C0
movslq 0x23ace4(%rip), %rcx    # 0x25a620
leaq 0x1e0bd(%rip), %rax     # 0x3da00
movq %rdx, (%rax,%rcx,8)
movslq 0x23acd2(%rip), %rcx    # 0x25a620
leaq 0x1e2ab(%rip), %rax     # 0x3dc00
movl $0x5, (%rax,%rcx,4)
movl 0x23acbe(%rip), %eax    # 0x25a620
addl $0x1, %eax
movl %eax, 0x23acb5(%rip)    # 0x25a620
movq -0x68(%rbp), %rdx
addq $0x800, %rdx            # imm = 0x800
movslq -0x88(%rbp), %rcx
leaq 0x1e07c(%rip), %rax     # 0x3da00
movq %rdx, (%rax,%rcx,8)
movl 0x23ac96(%rip), %eax    # 0x25a624
addl $0x1e, %eax
movl %eax, 0x23ac8d(%rip)    # 0x25a624
movq -0x68(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x10(%rax)
movq -0x18(%rbp), %rcx
movq -0x68(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x68(%rbp), %rax
addq $0x40, %rax
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rcx
movq -0x60(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x60(%rbp), %rcx
movq -0x70(%rbp), %rax
movq %rcx, 0x10(%rax)
movq -0x70(%rbp), %rax
addq $0x40, %rax
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rcx
movq -0x38(%rbp), %rax
movq %rcx, 0x10(%rax)
movq -0x38(%rbp), %rcx
movq -0x70(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x70(%rbp), %rax
addq $0x40, %rax
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rcx
movq -0x58(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x58(%rbp), %rcx
movq -0x70(%rbp), %rax
movq %rcx, 0x10(%rax)
movq -0x70(%rbp), %rax
addq $0x40, %rax
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rcx
movq -0x30(%rbp), %rax
movq %rcx, 0x10(%rax)
movq -0x30(%rbp), %rcx
movq -0x70(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x70(%rbp), %rax
addq $0x40, %rax
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rcx
movq -0x50(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x50(%rbp), %rcx
movq -0x70(%rbp), %rax
movq %rcx, 0x10(%rax)
movq -0x70(%rbp), %rax
addq $0x40, %rax
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, 0x10(%rax)
movq -0x28(%rbp), %rcx
movq -0x70(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x70(%rbp), %rax
addq $0x40, %rax
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rcx
movq -0x48(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x48(%rbp), %rcx
movq -0x70(%rbp), %rax
movq %rcx, 0x10(%rax)
movq -0x70(%rbp), %rax
addq $0x40, %rax
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x10(%rax)
movq -0x20(%rbp), %rcx
movq -0x70(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x70(%rbp), %rax
addq $0x40, %rax
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rcx
movq -0x40(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x40(%rbp), %rcx
movq -0x70(%rbp), %rax
movq %rcx, 0x10(%rax)
movl -0x74(%rbp), %ecx
movq -0x68(%rbp), %rax
movl %ecx, 0x3c4(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x284(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x40(%rax)
movq -0x68(%rbp), %rax
movl %ecx, (%rax)
movl -0x78(%rbp), %ecx
movq -0x68(%rbp), %rax
movl %ecx, 0x804(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x384(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x240(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x200(%rax)
movl -0x7c(%rbp), %ecx
movq -0x68(%rbp), %rax
movl %ecx, 0x7c4(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x6c4(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x180(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x1c0(%rax)
movl -0x80(%rbp), %ecx
movq -0x68(%rbp), %rax
movl %ecx, 0x684(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x584(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x140(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x100(%rax)
movl -0x84(%rbp), %ecx
movq -0x68(%rbp), %rax
movl %ecx, 0x544(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x404(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0xc0(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x80(%rax)
movl -0x88(%rbp), %ecx
movq -0x68(%rbp), %rax
movl %ecx, 0x1c4(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x704(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x9c4(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x344(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x204(%rax)
movl -0x88(%rbp), %ecx
movq -0x68(%rbp), %rax
movl %ecx, 0x880(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x840(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x800(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x7c0(%rax)
movq -0x68(%rbp), %rax
movl %ecx, 0x780(%rax)
movq -0x68(%rbp), %rax
addq $0x8c0, %rax            # imm = 0x8C0
addq $0x8, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)