// File: /workspace/github_cpp_makefile_star2_O3/tomfunkhouser[P]gaps/pkgs/fglut/freeglut_geometry.c
// Function: glutSolidDodecahedron
void FGAPIENTRY glutSolidDodecahedron( void )
{
  FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSolidDodecahedron" );

  /* Magic Numbers:  It is possible to create a dodecahedron by attaching two pentagons to each face of
   * of a cube.  The coordinates of the points are:
   *   (+-x,0, z); (+-1, 1, 1); (0, z, x )
   * where x = (-1 + sqrt(5))/2, z = (1 + sqrt(5))/2 or
   *       x = 0.61803398875 and z = 1.61803398875.
   */
  glBegin ( GL_POLYGON ) ;
  glNormal3d (  0.0,  0.525731112119,  0.850650808354 ) ; glVertex3d (  0.0,  1.61803398875,  0.61803398875 ) ; glVertex3d ( -1.0,  1.0,  1.0 ) ; glVertex3d ( -0.61803398875, 0.0,  1.61803398875 ) ; glVertex3d (  0.61803398875, 0.0,  1.61803398875 ) ; glVertex3d (  1.0,  1.0,  1.0 ) ;
  glEnd () ;
  glBegin ( GL_POLYGON ) ;
  glNormal3d (  0.0,  0.525731112119, -0.850650808354 ) ; glVertex3d (  0.0,  1.61803398875, -0.61803398875 ) ; glVertex3d (  1.0,  1.0, -1.0 ) ; glVertex3d (  0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( -0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d ( -1.0,  1.0, -1.0 ) ;
  glEnd () ;
  glBegin ( GL_POLYGON ) ;
  glNormal3d (  0.0, -0.525731112119,  0.850650808354 ) ; glVertex3d (  0.0, -1.61803398875,  0.61803398875 ) ; glVertex3d (  1.0, -1.0,  1.0 ) ; glVertex3d (  0.61803398875, 0.0,  1.61803398875 ) ; glVertex3d ( -0.61803398875, 0.0,  1.61803398875 ) ; glVertex3d ( -1.0, -1.0,  1.0 ) ;
  glEnd () ;
  glBegin ( GL_POLYGON ) ;
  glNormal3d (  0.0, -0.525731112119, -0.850650808354 ) ; glVertex3d (  0.0, -1.61803398875, -0.61803398875 ) ; glVertex3d ( -1.0, -1.0, -1.0 ) ; glVertex3d ( -0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d (  0.61803398875, 0.0, -1.61803398875 ) ; glVertex3d (  1.0, -1.0, -1.0 ) ;
  glEnd () ;

  glBegin ( GL_POLYGON ) ;
  glNormal3d (  0.850650808354,  0.0,  0.525731112119 ) ; glVertex3d (  0.61803398875,  0.0,  1.61803398875 ) ; glVertex3d (  1.0, -1.0,  1.0 ) ; glVertex3d (  1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d (  1.61803398875,  0.61803398875, 0.0 ) ; glVertex3d (  1.0,  1.0,  1.0 ) ;
  glEnd () ;
  glBegin ( GL_POLYGON ) ;
  glNormal3d ( -0.850650808354,  0.0,  0.525731112119 ) ; glVertex3d ( -0.61803398875,  0.0,  1.61803398875 ) ; glVertex3d ( -1.0,  1.0,  1.0 ) ; glVertex3d ( -1.61803398875,  0.61803398875, 0.0 ) ; glVertex3d ( -1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( -1.0, -1.0,  1.0 ) ;
  glEnd () ;
  glBegin ( GL_POLYGON ) ;
  glNormal3d (  0.850650808354,  0.0, -0.525731112119 ) ; glVertex3d (  0.61803398875,  0.0, -1.61803398875 ) ; glVertex3d (  1.0,  1.0, -1.0 ) ; glVertex3d (  1.61803398875,  0.61803398875, 0.0 ) ; glVertex3d (  1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d (  1.0, -1.0, -1.0 ) ;
  glEnd () ;
  glBegin ( GL_POLYGON ) ;
  glNormal3d ( -0.850650808354,  0.0, -0.525731112119 ) ; glVertex3d ( -0.61803398875,  0.0, -1.61803398875 ) ; glVertex3d ( -1.0, -1.0, -1.0 ) ; glVertex3d ( -1.61803398875, -0.61803398875, 0.0 ) ; glVertex3d ( -1.61803398875,  0.61803398875, 0.0 ) ; glVertex3d ( -1.0,  1.0, -1.0 ) ;
  glEnd () ;

  glBegin ( GL_POLYGON ) ;
  glNormal3d (  0.525731112119,  0.850650808354,  0.0 ) ; glVertex3d (  1.61803398875,  0.61803398875,  0.0 ) ; glVertex3d (  1.0,  1.0, -1.0 ) ; glVertex3d ( 0.0,  1.61803398875, -0.61803398875 ) ; glVertex3d ( 0.0,  1.61803398875,  0.61803398875 ) ; glVertex3d (  1.0,  1.0,  1.0 ) ;
  glEnd () ;
  glBegin ( GL_POLYGON ) ;
  glNormal3d (  0.525731112119, -0.850650808354,  0.0 ) ; glVertex3d (  1.61803398875, -0.61803398875,  0.0 ) ; glVertex3d (  1.0, -1.0,  1.0 ) ; glVertex3d ( 0.0, -1.61803398875,  0.61803398875 ) ; glVertex3d ( 0.0, -1.61803398875, -0.61803398875 ) ; glVertex3d (  1.0, -1.0, -1.0 ) ;
  glEnd () ;
  glBegin ( GL_POLYGON ) ;
  glNormal3d ( -0.525731112119,  0.850650808354,  0.0 ) ; glVertex3d ( -1.61803398875,  0.61803398875,  0.0 ) ; glVertex3d ( -1.0,  1.0,  1.0 ) ; glVertex3d ( 0.0,  1.61803398875,  0.61803398875 ) ; glVertex3d ( 0.0,  1.61803398875, -0.61803398875 ) ; glVertex3d ( -1.0,  1.0, -1.0 ) ;
  glEnd () ;
  glBegin ( GL_POLYGON ) ;
  glNormal3d ( -0.525731112119, -0.850650808354,  0.0 ) ; glVertex3d ( -1.61803398875, -0.61803398875,  0.0 ) ; glVertex3d ( -1.0, -1.0, -1.0 ) ; glVertex3d ( 0.0, -1.61803398875, -0.61803398875 ) ; glVertex3d ( 0.0, -1.61803398875,  0.61803398875 ) ; glVertex3d ( -1.0, -1.0,  1.0 ) ;
  glEnd () ;
}

// Assembly:
pushq %rax
leaq 0x6a45b(%rip), %rax     # 0x1421c0
cmpb $0x0, 0x1c(%rax)
jne 0xd7d80
leaq 0x11844(%rip), %rdi     # 0xe95b6
leaq 0x23294(%rip), %rsi     # 0xfb00d
xorl %eax, %eax
callq 0xcfe73
movl $0x9, %edi
callq 0x21190
movsd 0x23576(%rip), %xmm1    # 0xfb308
movsd 0x23576(%rip), %xmm2    # 0xfb310
xorps %xmm0, %xmm0
callq 0x21310
movsd 0x2356e(%rip), %xmm1    # 0xfb318
movsd 0x2356e(%rip), %xmm2    # 0xfb320
xorps %xmm0, %xmm0
callq 0x21e60
movsd 0x270e(%rip), %xmm0     # 0xda4d0
movsd 0x224e(%rip), %xmm1     # 0xda018
movaps %xmm1, %xmm2
callq 0x21e60
movsd 0x2354e(%rip), %xmm0    # 0xfb328
xorps %xmm1, %xmm1
movsd 0x23533(%rip), %xmm2    # 0xfb318
callq 0x21e60
xorps %xmm1, %xmm1
movsd 0x2352b(%rip), %xmm0    # 0xfb320
movsd 0x2351b(%rip), %xmm2    # 0xfb318
callq 0x21e60
movsd 0x220e(%rip), %xmm0     # 0xda018
movaps %xmm0, %xmm1
movaps %xmm0, %xmm2
callq 0x21e60
callq 0x21c50
movl $0x9, %edi
callq 0x21190
movsd 0x23504(%rip), %xmm2    # 0xfb330
xorps %xmm0, %xmm0
movsd 0x234d1(%rip), %xmm1    # 0xfb308
callq 0x21310
xorps %xmm0, %xmm0
movsd 0x234d1(%rip), %xmm1    # 0xfb318
movsd 0x234d9(%rip), %xmm2    # 0xfb328
callq 0x21e60
movsd 0x21bc(%rip), %xmm0     # 0xda018
movaps %xmm0, %xmm1
movsd 0x2669(%rip), %xmm2     # 0xda4d0
callq 0x21e60
movsd 0x234c4(%rip), %xmm2    # 0xfb338
xorps %xmm1, %xmm1
movsd 0x234a1(%rip), %xmm0    # 0xfb320
callq 0x21e60
xorps %xmm1, %xmm1
movsd 0x23499(%rip), %xmm0    # 0xfb328
movsd 0x234a1(%rip), %xmm2    # 0xfb338
callq 0x21e60
movsd 0x262c(%rip), %xmm0     # 0xda4d0
movsd 0x216c(%rip), %xmm1     # 0xda018
movaps %xmm0, %xmm2
callq 0x21e60
callq 0x21c50
movl $0x9, %edi
callq 0x21190
movsd 0x23475(%rip), %xmm1    # 0xfb340
xorps %xmm0, %xmm0
movsd 0x2343a(%rip), %xmm2    # 0xfb310
callq 0x21310
xorps %xmm0, %xmm0
movsd 0x23452(%rip), %xmm1    # 0xfb338
movsd 0x23432(%rip), %xmm2    # 0xfb320
callq 0x21e60
movsd 0x211d(%rip), %xmm0     # 0xda018
movsd 0x25cd(%rip), %xmm1     # 0xda4d0
movaps %xmm0, %xmm2
callq 0x21e60
xorps %xmm1, %xmm1
movsd 0x2340a(%rip), %xmm0    # 0xfb320
movsd 0x233fa(%rip), %xmm2    # 0xfb318
callq 0x21e60
xorps %xmm1, %xmm1
movsd 0x233fa(%rip), %xmm0    # 0xfb328
movsd 0x233e2(%rip), %xmm2    # 0xfb318
callq 0x21e60
movsd 0x258d(%rip), %xmm0     # 0xda4d0
movaps %xmm0, %xmm1
movsd 0x20ca(%rip), %xmm2     # 0xda018
callq 0x21e60
callq 0x21c50
movl $0x9, %edi
callq 0x21190
xorps %xmm0, %xmm0
movsd 0x233d3(%rip), %xmm1    # 0xfb340
movsd 0x233bb(%rip), %xmm2    # 0xfb330
callq 0x21310
xorps %xmm0, %xmm0
movsd 0x233b3(%rip), %xmm1    # 0xfb338
movsd 0x2339b(%rip), %xmm2    # 0xfb328
callq 0x21e60
movsd 0x2536(%rip), %xmm0     # 0xda4d0
movaps %xmm0, %xmm1
movaps %xmm0, %xmm2
callq 0x21e60
xorps %xmm1, %xmm1
movsd 0x23378(%rip), %xmm0    # 0xfb328
movsd 0x23380(%rip), %xmm2    # 0xfb338
callq 0x21e60
xorps %xmm1, %xmm1
movsd 0x23358(%rip), %xmm0    # 0xfb320
movsd 0x23368(%rip), %xmm2    # 0xfb338
callq 0x21e60
movsd 0x203b(%rip), %xmm0     # 0xda018
movsd 0x24eb(%rip), %xmm1     # 0xda4d0
movaps %xmm1, %xmm2
callq 0x21e60
callq 0x21c50
movl $0x9, %edi
callq 0x21190
xorps %xmm1, %xmm1
movsd 0x23309(%rip), %xmm0    # 0xfb310
movsd 0x232f9(%rip), %xmm2    # 0xfb308
callq 0x21310
xorps %xmm1, %xmm1
movsd 0x23301(%rip), %xmm0    # 0xfb320
movsd 0x232f1(%rip), %xmm2    # 0xfb318
callq 0x21e60
movsd 0x1fe4(%rip), %xmm0     # 0xda018
movsd 0x2494(%rip), %xmm1     # 0xda4d0
movaps %xmm0, %xmm2
callq 0x21e60
xorps %xmm2, %xmm2
movsd 0x232c9(%rip), %xmm0    # 0xfb318
movsd 0x232d1(%rip), %xmm1    # 0xfb328
callq 0x21e60
xorps %xmm2, %xmm2
movsd 0x232b1(%rip), %xmm0    # 0xfb318
movsd 0x232b1(%rip), %xmm1    # 0xfb320
callq 0x21e60
movsd 0x1f9c(%rip), %xmm0     # 0xda018
movaps %xmm0, %xmm1
movaps %xmm0, %xmm2
callq 0x21e60
callq 0x21c50
movl $0x9, %edi
callq 0x21190
xorps %xmm1, %xmm1
movsd 0x2328f(%rip), %xmm0    # 0xfb330
movsd 0x2325f(%rip), %xmm2    # 0xfb308
callq 0x21310
xorps %xmm1, %xmm1
movsd 0x2326f(%rip), %xmm0    # 0xfb328
movsd 0x23257(%rip), %xmm2    # 0xfb318
callq 0x21e60
movsd 0x2402(%rip), %xmm0     # 0xda4d0
movsd 0x1f42(%rip), %xmm1     # 0xda018
movaps %xmm1, %xmm2
callq 0x21e60
xorps %xmm2, %xmm2
movsd 0x2324f(%rip), %xmm0    # 0xfb338
movsd 0x2322f(%rip), %xmm1    # 0xfb320
callq 0x21e60
xorps %xmm2, %xmm2
movsd 0x23237(%rip), %xmm0    # 0xfb338
movsd 0x2321f(%rip), %xmm1    # 0xfb328
callq 0x21e60
movsd 0x23ba(%rip), %xmm0     # 0xda4d0
movaps %xmm0, %xmm1
movsd 0x1ef7(%rip), %xmm2     # 0xda018
callq 0x21e60
callq 0x21c50
movl $0x9, %edi
callq 0x21190
xorps %xmm1, %xmm1
movsd 0x231d0(%rip), %xmm0    # 0xfb310
movsd 0x231f8(%rip), %xmm2    # 0xfb340
callq 0x21310
xorps %xmm1, %xmm1
movsd 0x231c8(%rip), %xmm0    # 0xfb320
movsd 0x231d8(%rip), %xmm2    # 0xfb338
callq 0x21e60
movsd 0x1eab(%rip), %xmm0     # 0xda018
movaps %xmm0, %xmm1
movsd 0x2358(%rip), %xmm2     # 0xda4d0
callq 0x21e60
xorps %xmm2, %xmm2
movsd 0x23190(%rip), %xmm0    # 0xfb318
movsd 0x23190(%rip), %xmm1    # 0xfb320
callq 0x21e60
xorps %xmm2, %xmm2
movsd 0x23178(%rip), %xmm0    # 0xfb318
movsd 0x23180(%rip), %xmm1    # 0xfb328
callq 0x21e60
movsd 0x1e63(%rip), %xmm0     # 0xda018
movsd 0x2313(%rip), %xmm1     # 0xda4d0
movaps %xmm1, %xmm2
callq 0x21e60
callq 0x21c50
movl $0x9, %edi
callq 0x21190
xorps %xmm1, %xmm1
movsd 0x23151(%rip), %xmm0    # 0xfb330
movsd 0x23159(%rip), %xmm2    # 0xfb340
callq 0x21310
xorps %xmm1, %xmm1
movsd 0x23131(%rip), %xmm0    # 0xfb328
movsd 0x23139(%rip), %xmm2    # 0xfb338
callq 0x21e60
movsd 0x22c4(%rip), %xmm0     # 0xda4d0
movaps %xmm0, %xmm1
movaps %xmm0, %xmm2
callq 0x21e60
xorps %xmm2, %xmm2
movsd 0x23116(%rip), %xmm0    # 0xfb338
movsd 0x230fe(%rip), %xmm1    # 0xfb328
callq 0x21e60
xorps %xmm2, %xmm2
movsd 0x230fe(%rip), %xmm0    # 0xfb338
movsd 0x230de(%rip), %xmm1    # 0xfb320
callq 0x21e60
movsd 0x2281(%rip), %xmm0     # 0xda4d0
movsd 0x1dc1(%rip), %xmm1     # 0xda018
movaps %xmm0, %xmm2
callq 0x21e60
callq 0x21c50
movl $0x9, %edi
callq 0x21190
xorps %xmm2, %xmm2
movsd 0x2308f(%rip), %xmm0    # 0xfb308
movsd 0x2308f(%rip), %xmm1    # 0xfb310
callq 0x21310
xorps %xmm2, %xmm2
movsd 0x23087(%rip), %xmm0    # 0xfb318
movsd 0x23087(%rip), %xmm1    # 0xfb320
callq 0x21e60
movsd 0x1d72(%rip), %xmm0     # 0xda018
movaps %xmm0, %xmm1
movsd 0x221f(%rip), %xmm2     # 0xda4d0
callq 0x21e60
xorps %xmm0, %xmm0
movsd 0x23057(%rip), %xmm1    # 0xfb318
movsd 0x2305f(%rip), %xmm2    # 0xfb328
callq 0x21e60
xorps %xmm0, %xmm0
movsd 0x2303f(%rip), %xmm1    # 0xfb318
movsd 0x2303f(%rip), %xmm2    # 0xfb320
callq 0x21e60
movsd 0x1d2a(%rip), %xmm0     # 0xda018
movaps %xmm0, %xmm1
movaps %xmm0, %xmm2
callq 0x21e60
callq 0x21c50
movl $0x9, %edi
callq 0x21190
xorps %xmm2, %xmm2
movsd 0x22ff5(%rip), %xmm0    # 0xfb308
movsd 0x23015(%rip), %xmm1    # 0xfb330
callq 0x21310
xorps %xmm2, %xmm2
movsd 0x22fed(%rip), %xmm0    # 0xfb318
movsd 0x22ff5(%rip), %xmm1    # 0xfb328
callq 0x21e60
movsd 0x1cd8(%rip), %xmm0     # 0xda018
movsd 0x2188(%rip), %xmm1     # 0xda4d0
movaps %xmm0, %xmm2
callq 0x21e60
xorps %xmm0, %xmm0
movsd 0x22fdd(%rip), %xmm1    # 0xfb338
movsd 0x22fbd(%rip), %xmm2    # 0xfb320
callq 0x21e60
xorps %xmm0, %xmm0
movsd 0x22fc5(%rip), %xmm1    # 0xfb338
movsd 0x22fad(%rip), %xmm2    # 0xfb328
callq 0x21e60
movsd 0x1c90(%rip), %xmm0     # 0xda018
movsd 0x2140(%rip), %xmm1     # 0xda4d0
movaps %xmm1, %xmm2
callq 0x21e60
callq 0x21c50
movl $0x9, %edi
callq 0x21190
xorps %xmm2, %xmm2
movsd 0x22f8e(%rip), %xmm0    # 0xfb340
movsd 0x22f56(%rip), %xmm1    # 0xfb310
callq 0x21310
xorps %xmm2, %xmm2
movsd 0x22f6e(%rip), %xmm0    # 0xfb338
movsd 0x22f4e(%rip), %xmm1    # 0xfb320
callq 0x21e60
movsd 0x20f1(%rip), %xmm0     # 0xda4d0
movsd 0x1c31(%rip), %xmm1     # 0xda018
movaps %xmm1, %xmm2
callq 0x21e60
xorps %xmm0, %xmm0
movsd 0x22f1e(%rip), %xmm1    # 0xfb318
movsd 0x22f1e(%rip), %xmm2    # 0xfb320
callq 0x21e60
xorps %xmm0, %xmm0
movsd 0x22f06(%rip), %xmm1    # 0xfb318
movsd 0x22f0e(%rip), %xmm2    # 0xfb328
callq 0x21e60
movsd 0x20a9(%rip), %xmm0     # 0xda4d0
movsd 0x1be9(%rip), %xmm1     # 0xda018
movaps %xmm0, %xmm2
callq 0x21e60
callq 0x21c50
movl $0x9, %edi
callq 0x21190
xorps %xmm2, %xmm2
movsd 0x22eef(%rip), %xmm0    # 0xfb340
movsd 0x22ed7(%rip), %xmm1    # 0xfb330
callq 0x21310
xorps %xmm2, %xmm2
movsd 0x22ecf(%rip), %xmm0    # 0xfb338
movsd 0x22eb7(%rip), %xmm1    # 0xfb328
callq 0x21e60
movsd 0x2052(%rip), %xmm0     # 0xda4d0
movaps %xmm0, %xmm1
movaps %xmm0, %xmm2
callq 0x21e60
xorps %xmm0, %xmm0
movsd 0x22ea4(%rip), %xmm1    # 0xfb338
movsd 0x22e8c(%rip), %xmm2    # 0xfb328
callq 0x21e60
xorps %xmm0, %xmm0
movsd 0x22e8c(%rip), %xmm1    # 0xfb338
movsd 0x22e6c(%rip), %xmm2    # 0xfb320
callq 0x21e60
movsd 0x200f(%rip), %xmm0     # 0xda4d0
movaps %xmm0, %xmm1
movsd 0x1b4c(%rip), %xmm2     # 0xda018
callq 0x21e60
popq %rax
jmp 0x21c50