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

  glBegin( GL_LINE_LOOP ) ;
    glNormal3d ( -tet_r[0][0], -tet_r[0][1], -tet_r[0][2] ) ; glVertex3dv ( tet_r[1] ) ; glVertex3dv ( tet_r[3] ) ; glVertex3dv ( tet_r[2] ) ;
    glNormal3d ( -tet_r[1][0], -tet_r[1][1], -tet_r[1][2] ) ; glVertex3dv ( tet_r[0] ) ; glVertex3dv ( tet_r[2] ) ; glVertex3dv ( tet_r[3] ) ;
    glNormal3d ( -tet_r[2][0], -tet_r[2][1], -tet_r[2][2] ) ; glVertex3dv ( tet_r[0] ) ; glVertex3dv ( tet_r[3] ) ; glVertex3dv ( tet_r[1] ) ;
    glNormal3d ( -tet_r[3][0], -tet_r[3][1], -tet_r[3][2] ) ; glVertex3dv ( tet_r[0] ) ; glVertex3dv ( tet_r[1] ) ; glVertex3dv ( tet_r[2] ) ;
  glEnd() ;
}

// Assembly:
pushq %rax
leaq 0x6f248(%rip), %rax     # 0x1fa390
cmpb $0x0, 0x1c(%rax)
jne 0x18b163
leaq 0x1277d(%rip), %rdi     # 0x19d8d2
leaq 0x24121(%rip), %rsi     # 0x1af27d
movb $0x0, %al
callq 0x17de70
movl $0x2, %edi
callq 0x221b0
movsd 0x6f45b(%rip), %xmm0    # 0x1fa5d0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
movsd 0x6f444(%rip), %xmm1    # 0x1fa5d8
movq %xmm1, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm1
movsd 0x6f42d(%rip), %xmm2    # 0x1fa5e0
movq %xmm2, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm2
callq 0x22330
leaq 0x6f3fa(%rip), %rdi     # 0x1fa5d0
addq $0x18, %rdi
callq 0x221d0
leaq 0x6f3ea(%rip), %rdi     # 0x1fa5d0
addq $0x48, %rdi
callq 0x221d0
leaq 0x6f3da(%rip), %rdi     # 0x1fa5d0
addq $0x30, %rdi
callq 0x221d0
movsd 0x6f3e1(%rip), %xmm0    # 0x1fa5e8
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
movsd 0x6f3ca(%rip), %xmm1    # 0x1fa5f0
movq %xmm1, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm1
movsd 0x6f3b3(%rip), %xmm2    # 0x1fa5f8
movq %xmm2, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm2
callq 0x22330
leaq 0x6f368(%rip), %rdi     # 0x1fa5d0
callq 0x221d0
leaq 0x6f35c(%rip), %rdi     # 0x1fa5d0
addq $0x30, %rdi
callq 0x221d0
leaq 0x6f34c(%rip), %rdi     # 0x1fa5d0
addq $0x48, %rdi
callq 0x221d0
movsd 0x6f36b(%rip), %xmm0    # 0x1fa600
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
movsd 0x6f354(%rip), %xmm1    # 0x1fa608
movq %xmm1, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm1
movsd 0x6f33d(%rip), %xmm2    # 0x1fa610
movq %xmm2, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm2
callq 0x22330
leaq 0x6f2da(%rip), %rdi     # 0x1fa5d0
callq 0x221d0
leaq 0x6f2ce(%rip), %rdi     # 0x1fa5d0
addq $0x48, %rdi
callq 0x221d0
leaq 0x6f2be(%rip), %rdi     # 0x1fa5d0
addq $0x18, %rdi
callq 0x221d0
movsd 0x6f2f5(%rip), %xmm0    # 0x1fa618
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
movsd 0x6f2de(%rip), %xmm1    # 0x1fa620
movq %xmm1, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm1
movsd 0x6f2c7(%rip), %xmm2    # 0x1fa628
movq %xmm2, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm2
callq 0x22330
leaq 0x6f24c(%rip), %rdi     # 0x1fa5d0
callq 0x221d0
leaq 0x6f240(%rip), %rdi     # 0x1fa5d0
addq $0x18, %rdi
callq 0x221d0
leaq 0x6f230(%rip), %rdi     # 0x1fa5d0
addq $0x30, %rdi
callq 0x221d0
callq 0x22de0
popq %rax
retq