// File: /workspace/github_cpp_makefile_star2_O2/CobaltXII[P]cxcc/./parser/parser.hpp
// Function: parser_t::parse_relational_term()
expression_t* parse_relational_term() {
		expression_t* node = parse_shift_term();
		token_t token;
		while (input.peek().type == tk_bi_relational_greater_than ||
			   input.peek().type == tk_bi_relational_lesser_than ||
			   input.peek().type == tk_bi_relational_greater_than_or_equal_to ||
			   input.peek().type == tk_bi_relational_lesser_than_or_equal_to)
		{
			token = input.peek();
			binary_operator_t binary_operator = bi_error;
			if (token.type == tk_bi_relational_greater_than) {
				expect(tk_bi_relational_greater_than);
				binary_operator = bi_relational_greater_than;
			} else if (token.type == tk_bi_relational_lesser_than) {
				expect(tk_bi_relational_lesser_than);
				binary_operator = bi_relational_lesser_than;
			} else if (token.type == tk_bi_relational_greater_than_or_equal_to) {
				expect(tk_bi_relational_greater_than_or_equal_to);
				binary_operator = bi_relational_greater_than_or_equal_to;
			} else if (token.type == tk_bi_relational_lesser_than_or_equal_to) {
				expect(tk_bi_relational_lesser_than_or_equal_to);
				binary_operator = bi_relational_lesser_than_or_equal_to;
			}
			node = new expression_t((binary_expression_t){node, parse_shift_term(), binary_operator}, EXPRESSION_DEBUG);
		}
		return node;
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x228, %rsp            # imm = 0x228
movq %rdi, %r12
callq 0x867a
leaq 0x80(%rsp), %rcx
movq %rcx, -0x10(%rcx)
andq $0x0, -0x8(%rcx)
movq %rax, %rbx
movb $0x0, (%rcx)
leaq 0x20(%r12), %rbp
leaq 0x30(%rsp), %r13
movq %r13, %rdi
movq %rbp, %rsi
callq 0x5d52
cmpl $0x20, 0x30(%rsp)
je 0x847c
leaq 0xa0(%rsp), %rdi
movq %rbp, %rsi
callq 0x5d52
cmpl $0x21, 0xa0(%rsp)
je 0x846f
leaq 0xd8(%rsp), %rdi
movq %rbp, %rsi
callq 0x5d52
cmpl $0x22, 0xd8(%rsp)
jne 0x85aa
leaq 0xe0(%rsp), %rdi
callq 0x2100
leaq 0xa8(%rsp), %rdi
callq 0x2100
leaq 0x38(%rsp), %rdi
callq 0x2100
movq %r13, %rdi
movq %rbp, %rsi
callq 0x5d52
leaq 0x68(%rsp), %rdi
movq %r13, %rsi
callq 0x5280
leaq 0x38(%rsp), %rdi
callq 0x2100
movl 0x68(%rsp), %eax
addl $-0x20, %eax
pushq $0x1d
popq %r15
cmpl $0x3, %eax
ja 0x8553
leaq 0x7c31(%rip), %rcx      # 0x100f4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x1f0(%rsp), %rdi
movq %r12, %rsi
pushq $0x20
popq %rdx
callq 0x62f0
leaq 0x1f8(%rsp), %rdi
pushq $0xf
popq %r15
jmp 0x854e
leaq 0x180(%rsp), %rdi
movq %r12, %rsi
pushq $0x22
popq %rdx
callq 0x62f0
leaq 0x188(%rsp), %rdi
pushq $0x11
popq %r15
jmp 0x854e
leaq 0x148(%rsp), %rdi
movq %r12, %rsi
pushq $0x23
popq %rdx
callq 0x62f0
leaq 0x150(%rsp), %rdi
pushq $0x12
popq %r15
jmp 0x854e
leaq 0x1b8(%rsp), %rdi
movq %r12, %rsi
pushq $0x21
popq %rdx
callq 0x62f0
leaq 0x1c0(%rsp), %rdi
pushq $0x10
popq %r15
callq 0x2100
movl $0x118, %edi            # imm = 0x118
callq 0x2240
movq %rax, %r14
movq %rbx, 0x18(%rsp)
movq %r12, %rdi
callq 0x867a
movq %rax, 0x20(%rsp)
movl %r15d, 0x28(%rsp)
movq 0x90(%rsp), %rsi
movq 0x98(%rsp), %rdx
movq 0x28(%rsp), %rax
movq %rax, 0x10(%rsp)
movups 0x18(%rsp), %xmm0
movups %xmm0, (%rsp)
movq %r14, %rdi
callq 0x7bc8
movq %r14, %rbx
jmp 0x8418
leaq 0x110(%rsp), %rdi
movq %rbp, %rsi
callq 0x5d52
movl 0x110(%rsp), %r14d
leaq 0x118(%rsp), %rdi
callq 0x2100
leaq 0xe0(%rsp), %rdi
callq 0x2100
leaq 0xa8(%rsp), %rdi
callq 0x2100
leaq 0x38(%rsp), %rdi
callq 0x2100
cmpl $0x23, %r14d
je 0x8486
leaq 0x70(%rsp), %rdi
callq 0x2100
movq %rbx, %rax
addq $0x228, %rsp            # imm = 0x228
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
leaq 0xe0(%rsp), %rdi
callq 0x2100
jmp 0x8631
movq %rax, %rbx
leaq 0xa8(%rsp), %rdi
callq 0x2100
jmp 0x8643
movq %rax, %rbx
leaq 0x38(%rsp), %rdi
callq 0x2100
jmp 0x8668
movq %rax, %rbx
movl $0x118, %esi            # imm = 0x118
movq %r14, %rdi
callq 0x2250
jmp 0x8668
jmp 0x8665
jmp 0x8665
movq %rax, %rbx
leaq 0x70(%rsp), %rdi
callq 0x2100
movq %rbx, %rdi
callq 0x2390