// File: /workspace/github_cpp_makefile_star2_O3/rfotino[P]consolite-compiler/src/syntax.cpp
// Function: OperatorToken::precedence() const
int OperatorToken::precedence() const {
  if ("[" == _op) {
    return 1;
  } else if (isUnary()) {
    return 2;
  } else if ("*" == _op || "/" == _op || "%" == _op) {
    return 3;
  } else if ("+" == _op || "-" == _op) {
    return 4;
  } else if ("<<" == _op || ">>" == _op) {
    return 5;
  } else if ("<" == _op || "<=" == _op || ">" == _op || ">=" == _op) {
    return 6;
  } else if ("==" == _op || "!=" == _op) {
    return 7;
  } else if ("&" == _op) {
    return 8;
  } else if ("^" == _op) {
    return 9;
  } else if ("|" == _op) {
    return 10;
  } else if ("&&" == _op) {
    return 11;
  } else if ("||" == _op) {
    return 12;
  } else if ("=" == _op) {
    return 13;
  }
  return -1;
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
movq %rdi, %r14
leaq 0x10(%rdi), %rbx
leaq 0x273c6(%rip), %rsi     # 0x355f4
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe407
movl $0x2, %ebp
cmpb $0x1, 0x30(%r14)
jne 0xe40c
leaq 0x27381(%rip), %rsi     # 0x355d6
movq %rbx, %rdi
callq 0x70c0
movl $0x3, %ebp
testl %eax, %eax
je 0xe40c
leaq 0x27367(%rip), %rsi     # 0x355d8
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe40c
leaq 0x27352(%rip), %rsi     # 0x355da
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe40c
leaq 0x27333(%rip), %rsi     # 0x355d2
movq %rbx, %rdi
callq 0x70c0
movl $0x4, %ebp
testl %eax, %eax
je 0xe40c
leaq 0x27319(%rip), %rsi     # 0x355d4
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe40c
leaq 0x27324(%rip), %rsi     # 0x355f6
movq %rbx, %rdi
callq 0x70c0
movl $0x5, %ebp
testl %eax, %eax
je 0xe40c
leaq 0x2730b(%rip), %rsi     # 0x355f9
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe40c
leaq 0x272f2(%rip), %rsi     # 0x355f7
movq %rbx, %rdi
callq 0x70c0
movl $0x6, %ebp
testl %eax, %eax
je 0xe40c
leaq 0x272c7(%rip), %rsi     # 0x355e8
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe40c
leaq 0x272c2(%rip), %rsi     # 0x355fa
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe40c
leaq 0x2729c(%rip), %rsi     # 0x355eb
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe40c
leaq 0x27288(%rip), %rsi     # 0x355ee
movq %rbx, %rdi
callq 0x70c0
movl $0x7, %ebp
testl %eax, %eax
je 0xe40c
leaq 0x2726f(%rip), %rsi     # 0x355f1
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe40c
leaq 0x27251(%rip), %rsi     # 0x355e6
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe413
leaq 0x27234(%rip), %rsi     # 0x355dc
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe41a
leaq 0x27228(%rip), %rsi     # 0x355e3
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe421
leaq 0x27217(%rip), %rsi     # 0x355e5
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe428
leaq 0x27201(%rip), %rsi     # 0x355e2
movq %rbx, %rdi
callq 0x70c0
testl %eax, %eax
je 0xe42f
leaq 0x271fe(%rip), %rsi     # 0x355f2
movq %rbx, %rdi
callq 0x70c0
xorl %ebp, %ebp
negl %eax
sbbl %ebp, %ebp
orl $0xd, %ebp
jmp 0xe40c
movl $0x1, %ebp
movl %ebp, %eax
popq %rbx
popq %r14
popq %rbp
retq
movl $0x8, %ebp
jmp 0xe40c
movl $0x9, %ebp
jmp 0xe40c
movl $0xa, %ebp
jmp 0xe40c
movl $0xb, %ebp
jmp 0xe40c
movl $0xc, %ebp
jmp 0xe40c