// File: /workspace/github_c_makefile_star2_O3/AK6DN[P]dec-utilities-for-pdp/macro8x/macro8x.c
// Function: inputFltg
void inputFltg()
{
  FLTG_T   *fltg;
  BOOL   scanning_line;

  fltg_input = TRUE;            /* Set lexeme scanner for floating point.     */
  scanning_line = TRUE;
  while( TRUE )
  {
    while( scanning_line )
    {
      if( is_end( line[lexstart] ))
      {
        scanning_line = FALSE;
      }
      else
      {
        switch( line[lexstart] )
        {
        case '/':
          scanning_line = FALSE;
          break;

        case ';':
          nextLexeme();
          break;

        case '+':
          delimiter = line[lexterm];
          nextLexBlank();
        case '-':
        default:
          if( is_digit( line[lexstart] ) || line[lexstart] == '-' )
          {
            fltg = getFltgExprs();
            punchOutObject( clc, ( fltg->exponent & 07777 ));
            incrementClc();
            punchOutObject( clc, (WORD32)(( fltg->mantissa >> 12 ) & 07777 ));
            incrementClc();
            punchOutObject( clc, (WORD32)( fltg->mantissa & 07777 ));
            incrementClc();
          }
          else
          {
            fltg_input = FALSE; /* Reset lexeme scanner.                      */
            return;             /* Non-numeric input, back to assembly.       */
          }
          break;
        } /* end switch                                                       */
      } /* end if                                                             */

      if( error_in_line )
      {
        fltg_input = FALSE;     /* Reset lexeme scanner.                      */
        return;                 /* Error occurred, exit FLTG input mode.      */
      }
    } /* end while( scanning_line )                                           */
    readLine();
    nextLexeme();
    scanning_line = TRUE;
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movb $0x1, 0x6aa9(%rip)      # 0xcc91
movb $0x1, %al
leaq 0x1262f(%rip), %rbx     # 0x18820
movl $0x7000, %r13d          # imm = 0x7000
movl $0xfff, %ebp            # imm = 0xFFF
testb %al, %al
jne 0x620e
callq 0x381e
callq 0x3ad6
movb $0x1, %al
jmp 0x61fc
movq 0x129f3(%rip), %rax     # 0x18c08
movzbl (%rax,%rbx), %r14d
xorl %eax, %eax
testl %r14d, %r14d
je 0x63c2
cmpl $0xa, %r14d
je 0x63c2
movsbl %r14b, %eax
addl $-0x2b, %eax
je 0x6255
rorl %eax
cmpl $0x2, %eax
je 0x624e
cmpl $0x8, %eax
jne 0x6275
callq 0x3ad6
jmp 0x63c0
xorl %eax, %eax
jmp 0x63c2
movq 0x129bc(%rip), %rax     # 0x18c18
movb (%rax,%rbx), %al
movb %al, 0x129bb(%rip)      # 0x18c20
callq 0x43d7
movq 0x12997(%rip), %rax     # 0x18c08
movb (%rax,%rbx), %r14b
callq 0x21a0
cmpb $0x2d, %r14b
je 0x6296
movq (%rax), %rax
movsbq %r14b, %rcx
movzwl (%rax,%rcx,2), %eax
andl $0x800, %eax            # imm = 0x800
je 0x63cf
callq 0x63e5
movq %rax, %r14
movq 0x10d0b(%rip), %r15     # 0x16fb0
movq (%rax), %r12
movl $0xfff, %eax            # imm = 0xFFF
andq %rax, %r12
movq 0x10d01(%rip), %rsi     # 0x16fb8
orq %r15, %rsi
movq %rbx, %rdi
movq %r12, %rdx
movl $0x2, %ecx
callq 0x3f83
movq %r15, %rdi
movq %r12, %rsi
callq 0x6be8
movq 0x10cd4(%rip), %rdi     # 0x16fb0
callq 0x68fe
movq 0x10cc8(%rip), %rax     # 0x16fb0
movq %rax, %r15
andq %r13, %r15
incl %eax
andl %ebp, %eax
orq %rax, %r15
movq %r15, 0x10cb4(%rip)     # 0x16fb0
movq %rax, 0x10cbd(%rip)     # 0x16fc0
movl 0x8(%r14), %r12d
shrl $0xc, %r12d
andl %ebp, %r12d
movq 0x10ca3(%rip), %rsi     # 0x16fb8
orq %r15, %rsi
movq %rbx, %rdi
movq %r12, %rdx
movl $0x2, %ecx
callq 0x3f83
movq %r15, %rdi
movq %r12, %rsi
callq 0x6be8
movq 0x10c76(%rip), %rdi     # 0x16fb0
callq 0x68fe
movq 0x10c6a(%rip), %rax     # 0x16fb0
movq %rax, %r15
andq %r13, %r15
incl %eax
andl %ebp, %eax
orq %rax, %r15
movq %r15, 0x10c56(%rip)     # 0x16fb0
movq %rax, 0x10c5f(%rip)     # 0x16fc0
movq 0x8(%r14), %r14
movl $0xfff, %eax            # imm = 0xFFF
andq %rax, %r14
movq 0x10c44(%rip), %rsi     # 0x16fb8
orq %r15, %rsi
movq %rbx, %rdi
movq %r14, %rdx
movl $0x2, %ecx
callq 0x3f83
movq %r15, %rdi
movq %r14, %rsi
callq 0x6be8
movq 0x10c17(%rip), %rdi     # 0x16fb0
callq 0x68fe
movq 0x10c0b(%rip), %rax     # 0x16fb0
movq %rax, %rcx
andq %r13, %rcx
incl %eax
andl %ebp, %eax
orq %rax, %rcx
movq %rcx, 0x10bf7(%rip)     # 0x16fb0
movq %rax, 0x10c00(%rip)     # 0x16fc0
movb $0x1, %al
cmpb $0x0, 0x12847(%rip)     # 0x18c10
je 0x61fc
movb $0x0, 0x68bb(%rip)      # 0xcc91
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq