// File: /workspace/github_c_makefile_star2_O0/oridb[P]mc/parse/tok.c
// Function: oper
static Tok *
oper(void)
{
	int tt;
	char c;

	tt = 0;
	c = next();
	switch (c) {
	case '{': tt = Tobrace; break;
	case '}': tt = Tcbrace; break;
	case '(': tt = Toparen; break;
	case ')': tt = Tcparen; break;
	case '[': tt = Tosqbrac; break;
	case ']': tt = Tcsqbrac; break;
	case ',': tt = Tcomma; break;
	case '`': tt = Ttick; break;
	case '#': tt = Tderef; break;
	case '?': tt = Tqmark; break;
	case ':':
		  if (match(':'))
			  tt = Twith;
		  else
			  tt = Tcolon;
		  break;
	case '~': tt = Tbnot; break;
	case ';':
		  if (match(';'))
			  tt = Tendblk;
		  else
			  tt = Tendln;
		  break;
	case '.':
		  if (match('.')) {
			  if (match('.')) {
				  tt = Tellipsis;
			  } else {
				  unget();
				  tt = Tdot;
			  }
		  } else {
			  tt = Tdot;
		  }
		  break;
	case '+':
		  if (match('='))
			  tt = Taddeq;
		  else if (match('+'))
			  tt = Tinc;
		  else
			  tt = Tplus;
		  break;
	case '-':
		  if (match('='))
			  tt = Tsubeq;
		  else if (match('-'))
			  tt = Tdec;
		  else if (match('>'))
			  tt = Tret;
		  else
			  tt = Tminus;
		  break;
	case '*':
		  if (match('='))
			  tt = Tmuleq;
		  else
			  tt = Tmul;
		  break;
	case '/':
		  if (match('='))
			  tt = Tdiveq;
		  else
			  tt = Tdiv;
		  break;
	case '%':
		  if (match('='))
			  tt = Tmodeq;
		  else
			  tt = Tmod;
		  break;
	case '=':
		  if (match('='))
			  tt = Teq;
		  else
			  tt = Tasn;
		  break;
	case '|':
		  if (match('='))
			  tt = Tboreq;
		  else if (match('|'))
			  tt = Tlor;
		  else
			  tt = Tbor;
		  break;
	case '&':
		  if (match('='))
			  tt = Tbandeq;
		  else if (match('&'))
			  tt = Tland;
		  else
			  tt = Tband;
		  break;
	case '^':
		  if (match('='))
			  tt = Tbxoreq;
		  else
			  tt = Tbxor;
		  break;
	case '<':
		  if (match('=')) {
			  tt = Tle;
		  } else if (match('<')) {
			  if (match('='))
				  tt = Tbsleq;
			  else
				  tt = Tbsl;
		  } else {
			  tt = Tlt;
		  }
		  break;
	case '>':
		  if (match('=')) {
			  tt = Tge;
		  } else if (match('>')) {
			  if (match('='))
				  tt = Tbsreq;
			  else
				  tt = Tbsr;
		  } else {
			  tt = Tgt;
		  }
		  break;

	case '!':
		  if (match('='))
			  tt = Tne;
		  else
			  tt = Tlnot;
		  break;
	default:
		  lfatal(curloc, "Junk character %c", c);
		  break;
	}
	return mktok(tt);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl $0x0, -0x4(%rbp)
callq 0x35290
movb %al, -0x5(%rbp)
movsbl -0x5(%rbp), %eax
addl $-0x21, %eax
movl %eax, %ecx
movq %rcx, -0x10(%rbp)
subl $0x5d, %eax
ja 0x35aae
movq -0x10(%rbp), %rax
leaq 0x1e008(%rip), %rcx     # 0x53710
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl $0x123, -0x4(%rbp)      # imm = 0x123
jmp 0x35ac7
movl $0x124, -0x4(%rbp)      # imm = 0x124
jmp 0x35ac7
movl $0x125, -0x4(%rbp)      # imm = 0x125
jmp 0x35ac7
movl $0x126, -0x4(%rbp)      # imm = 0x126
jmp 0x35ac7
movl $0x127, -0x4(%rbp)      # imm = 0x127
jmp 0x35ac7
movl $0x128, -0x4(%rbp)      # imm = 0x128
jmp 0x35ac7
movl $0x14c, -0x4(%rbp)      # imm = 0x14C
jmp 0x35ac7
movl $0x129, -0x4(%rbp)      # imm = 0x129
jmp 0x35ac7
movl $0x12a, -0x4(%rbp)      # imm = 0x12A
jmp 0x35ac7
movl $0x12b, -0x4(%rbp)      # imm = 0x12B
jmp 0x35ac7
movl $0x3a, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x357a1
movl $0x14a, -0x4(%rbp)      # imm = 0x14A
jmp 0x357a8
movl $0x149, -0x4(%rbp)      # imm = 0x149
jmp 0x35ac7
movl $0x119, -0x4(%rbp)      # imm = 0x119
jmp 0x35ac7
movl $0x3b, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x357d1
movl $0x148, -0x4(%rbp)      # imm = 0x148
jmp 0x357d8
movl $0x147, -0x4(%rbp)      # imm = 0x147
jmp 0x35ac7
movl $0x2e, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x35812
movl $0x2e, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x35804
movl $0x146, -0x4(%rbp)      # imm = 0x146
jmp 0x35810
callq 0x36990
movl $0x14b, -0x4(%rbp)      # imm = 0x14B
jmp 0x35819
movl $0x14b, -0x4(%rbp)      # imm = 0x14B
jmp 0x35ac7
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x35836
movl $0x10a, -0x4(%rbp)      # imm = 0x10A
jmp 0x35857
movl $0x2b, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x3584e
movl $0x106, -0x4(%rbp)      # imm = 0x106
jmp 0x35855
movl $0x102, -0x4(%rbp)      # imm = 0x102
jmp 0x35857
jmp 0x35ac7
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x35874
movl $0x10b, -0x4(%rbp)      # imm = 0x10B
jmp 0x358af
movl $0x2d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x3588c
movl $0x107, -0x4(%rbp)      # imm = 0x107
jmp 0x358ad
movl $0x3e, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x358a4
movl $0x14d, -0x4(%rbp)      # imm = 0x14D
jmp 0x358ab
movl $0x103, -0x4(%rbp)      # imm = 0x103
jmp 0x358ad
jmp 0x358af
jmp 0x35ac7
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x358cc
movl $0x10c, -0x4(%rbp)      # imm = 0x10C
jmp 0x358d3
movl $0x104, -0x4(%rbp)      # imm = 0x104
jmp 0x35ac7
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x358f0
movl $0x10d, -0x4(%rbp)      # imm = 0x10D
jmp 0x358f7
movl $0x105, -0x4(%rbp)      # imm = 0x105
jmp 0x35ac7
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x35914
movl $0x10e, -0x4(%rbp)      # imm = 0x10E
jmp 0x3591b
movl $0x108, -0x4(%rbp)      # imm = 0x108
jmp 0x35ac7
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x35938
movl $0x11a, -0x4(%rbp)      # imm = 0x11A
jmp 0x3593f
movl $0x109, -0x4(%rbp)      # imm = 0x109
jmp 0x35ac7
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x3595c
movl $0x10f, -0x4(%rbp)      # imm = 0x10F
jmp 0x3597d
movl $0x7c, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x35974
movl $0x120, -0x4(%rbp)      # imm = 0x120
jmp 0x3597b
movl $0x114, -0x4(%rbp)      # imm = 0x114
jmp 0x3597d
jmp 0x35ac7
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x3599a
movl $0x111, -0x4(%rbp)      # imm = 0x111
jmp 0x359bb
movl $0x26, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x359b2
movl $0x121, -0x4(%rbp)      # imm = 0x121
jmp 0x359b9
movl $0x116, -0x4(%rbp)      # imm = 0x116
jmp 0x359bb
jmp 0x35ac7
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x359d8
movl $0x110, -0x4(%rbp)      # imm = 0x110
jmp 0x359df
movl $0x115, -0x4(%rbp)      # imm = 0x115
jmp 0x35ac7
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x359fc
movl $0x11e, -0x4(%rbp)      # imm = 0x11E
jmp 0x35a35
movl $0x3c, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x35a2c
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x35a23
movl $0x112, -0x4(%rbp)      # imm = 0x112
jmp 0x35a2a
movl $0x117, -0x4(%rbp)      # imm = 0x117
jmp 0x35a33
movl $0x11c, -0x4(%rbp)      # imm = 0x11C
jmp 0x35a35
jmp 0x35ac7
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x35a52
movl $0x11d, -0x4(%rbp)      # imm = 0x11D
jmp 0x35a8b
movl $0x3e, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x35a82
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x35a79
movl $0x113, -0x4(%rbp)      # imm = 0x113
jmp 0x35a80
movl $0x118, -0x4(%rbp)      # imm = 0x118
jmp 0x35a89
movl $0x11b, -0x4(%rbp)      # imm = 0x11B
jmp 0x35a8b
jmp 0x35ac7
movl $0x3d, %edi
callq 0x35be0
cmpl $0x0, %eax
je 0x35aa5
movl $0x11f, -0x4(%rbp)      # imm = 0x11F
jmp 0x35aac
movl $0x122, -0x4(%rbp)      # imm = 0x122
jmp 0x35ac7
movsbl -0x5(%rbp), %edx
movq 0x48213(%rip), %rdi     # 0x7dccc
leaq 0x1e41e(%rip), %rsi     # 0x53ede
movb $0x0, %al
callq 0x1e110
movl -0x4(%rbp), %edi
callq 0x35250
addq $0x10, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)