// File: /workspace/github_c_makefile_star2_O0/barabo[P]advanced-shell-history/src/sqlite3.c
// Function: yy_find_shift_action
static int yy_find_shift_action(
  yyParser *pParser,        /* The parser */
  YYCODETYPE iLookAhead     /* The look-ahead token */
){
  int i;
  int stateno = pParser->yystack[pParser->yyidx].stateno;
 
  if( stateno>YY_SHIFT_COUNT
   || (i = yy_shift_ofst[stateno])==YY_SHIFT_USE_DFLT ){
    return yy_default[stateno];
  }
  assert( iLookAhead!=YYNOCODE );
  i += iLookAhead;
  if( i<0 || i>=YY_ACTTAB_COUNT || yy_lookahead[i]!=iLookAhead ){
    if( iLookAhead>0 ){
#ifdef YYFALLBACK
      YYCODETYPE iFallback;            /* Fallback token */
      if( iLookAhead<sizeof(yyFallback)/sizeof(yyFallback[0])
             && (iFallback = yyFallback[iLookAhead])!=0 ){
#ifndef NDEBUG
        if( yyTraceFILE ){
          fprintf(yyTraceFILE, "%sFALLBACK %s => %s\n",
             yyTracePrompt, yyTokenName[iLookAhead], yyTokenName[iFallback]);
        }
#endif
        return yy_find_shift_action(pParser, iFallback);
      }
#endif
#ifdef YYWILDCARD
      {
        int j = i - iLookAhead + YYWILDCARD;
        if( 
#if YY_SHIFT_MIN+YYWILDCARD<0
          j>=0 &&
#endif
#if YY_SHIFT_MAX+YYWILDCARD>=YY_ACTTAB_COUNT
          j<YY_ACTTAB_COUNT &&
#endif
          yy_lookahead[j]==YYWILDCARD
        ){
#ifndef NDEBUG
          if( yyTraceFILE ){
            fprintf(yyTraceFILE, "%sWILDCARD %s => %s\n",
               yyTracePrompt, yyTokenName[iLookAhead], yyTokenName[YYWILDCARD]);
          }
#endif /* NDEBUG */
          return yy_action[j];
        }
      }
#endif /* YYWILDCARD */
    }
    return yy_default[stateno];
  }else{
    return yy_action[i];
  }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movb %sil, %al
movq %rdi, -0x10(%rbp)
movb %al, -0x11(%rbp)
movq -0x10(%rbp), %rax
addq $0x10, %rax
movq -0x10(%rbp), %rcx
movslq (%rcx), %rcx
shlq $0x5, %rcx
addq %rcx, %rax
movzwl (%rax), %eax
movl %eax, -0x1c(%rbp)
cmpl $0x1a1, -0x1c(%rbp)     # imm = 0x1A1
jg 0x4c59e
movslq -0x1c(%rbp), %rcx
leaq 0x5f09e(%rip), %rax     # 0xab630
movswl (%rax,%rcx,2), %eax
movl %eax, -0x18(%rbp)
cmpl $-0x46, %eax
jne 0x4c5b5
movslq -0x1c(%rbp), %rcx
leaq 0x5f3d7(%rip), %rax     # 0xab980
movzwl (%rax,%rcx,2), %eax
movl %eax, -0x4(%rbp)
jmp 0x4c68e
movzbl -0x11(%rbp), %eax
addl -0x18(%rbp), %eax
movl %eax, -0x18(%rbp)
cmpl $0x0, -0x18(%rbp)
jl 0x4c5e9
cmpl $0x61c, -0x18(%rbp)     # imm = 0x61C
jge 0x4c5e9
movslq -0x18(%rbp), %rcx
leaq 0x5f897(%rip), %rax     # 0xabe70
movzbl (%rax,%rcx), %eax
movzbl -0x11(%rbp), %ecx
cmpl %ecx, %eax
je 0x4c67c
movzbl -0x11(%rbp), %eax
cmpl $0x0, %eax
jle 0x4c668
movzbl -0x11(%rbp), %eax
cmpq $0x43, %rax
jae 0x4c629
movzbl -0x11(%rbp), %eax
movl %eax, %ecx
leaq 0x5fe87(%rip), %rax     # 0xac490
movb (%rax,%rcx), %al
movb %al, -0x1d(%rbp)
movzbl %al, %eax
cmpl $0x0, %eax
je 0x4c629
movq -0x10(%rbp), %rdi
movzbl -0x1d(%rbp), %esi
callq 0x4c550
movl %eax, -0x4(%rbp)
jmp 0x4c68e
movl -0x18(%rbp), %eax
movzbl -0x11(%rbp), %ecx
subl %ecx, %eax
addl $0x43, %eax
movl %eax, -0x24(%rbp)
cmpl $0x0, -0x24(%rbp)
jl 0x4c666
movslq -0x24(%rbp), %rcx
leaq 0x5f827(%rip), %rax     # 0xabe70
movzbl (%rax,%rcx), %eax
cmpl $0x43, %eax
jne 0x4c666
movslq -0x24(%rbp), %rcx
leaq 0x5fe83(%rip), %rax     # 0xac4e0
movzwl (%rax,%rcx,2), %eax
movl %eax, -0x4(%rbp)
jmp 0x4c68e
jmp 0x4c668
movslq -0x1c(%rbp), %rcx
leaq 0x5f30d(%rip), %rax     # 0xab980
movzwl (%rax,%rcx,2), %eax
movl %eax, -0x4(%rbp)
jmp 0x4c68e
movslq -0x18(%rbp), %rcx
leaq 0x5fe59(%rip), %rax     # 0xac4e0
movzwl (%rax,%rcx,2), %eax
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x30, %rsp
popq %rbp
retq
nopw (%rax,%rax)