// File: /workspace/github_c_makefile_star2_O1/BernardTatin[P]s7sh/s7.c
// Function: fx_lt_gsg
static s7_pointer fx_lt_gsg(s7_scheme *sc, s7_pointer arg)
                {
                    s7_pointer v1, v2, v3;
                    v1 = lookup_global(sc, cadr(arg));
                    v2 = lookup(sc, opt1_sym(cdr(arg)));        /* caddr(arg) */
                    v3 = lookup_global(sc, opt2_sym(cdr(arg))); /* cadddr(arg) */
                    if ((is_t_integer(v1)) && (is_t_integer(v2)) && (is_t_integer(v3)))
                        return(make_boolean(sc, ((v1 < v2) && (v2 < v3))));
                    if (!is_real(v3)) wrong_type_argument(sc, sc->lt_symbol, 3, v3, T_REAL); /* (< 2 1 1+i) */
                    return(make_boolean(sc, (lt_b_7pp(sc, v1, v2)) && (lt_b_7pp(sc, v2, v3))));
                }

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %r15
movq %rdi, %rbx
movq 0x10(%rsi), %rax
movq 0x8(%rax), %rsi
testb $0x1, 0x2(%rsi)
jne 0xba2df
movq 0x8(%rbx), %rax
movq 0x18(%rax), %rdx
movq 0x20(%rsi), %rcx
cmpq %rcx, %rdx
je 0xba2c5
jle 0xba2bc
movq 0x10(%rax), %rax
movq 0x18(%rax), %rdx
cmpq %rdx, %rcx
jl 0xba2af
cmpq %rcx, %rdx
jne 0xba468
movq 0x18(%rsi), %rax
movq 0x10(%rax), %r14
testq %r14, %r14
jne 0xba2e7
movq %rbx, %rdi
callq 0xa2ee9
movq %rax, %r14
jmp 0xba2e7
movq 0x10(%rsi), %rax
movq 0x10(%rax), %r14
movq 0x10(%r15), %rdx
movq 0x18(%rdx), %rsi
movq 0x8(%rbx), %rax
movq 0x18(%rax), %rcx
movq 0x20(%rsi), %r8
cmpq %r8, %rcx
je 0xba321
movq %rax, %rdi
movq %rcx, %r9
jle 0xba318
movq %rax, %rdi
movq 0x10(%rdi), %rdi
movq 0x18(%rdi), %r9
cmpq %r9, %r8
jl 0xba30b
cmpq %r8, %r9
jne 0xba41f
movq 0x18(%rsi), %rsi
movq 0x10(%rsi), %r15
movq 0x20(%rdx), %rsi
testb $0x1, 0x2(%rsi)
jne 0xba36e
movq 0x20(%rsi), %rdx
cmpq %rdx, %rcx
je 0xba354
jle 0xba34b
movq 0x10(%rax), %rax
movq 0x18(%rax), %rcx
cmpq %rcx, %rdx
jl 0xba33e
cmpq %rdx, %rcx
jne 0xba4af
movq 0x18(%rsi), %rax
movq 0x10(%rax), %r12
testq %r12, %r12
jne 0xba376
movq %rbx, %rdi
callq 0xa2ee9
movq %rax, %r12
jmp 0xba376
movq 0x10(%rsi), %rax
movq 0x10(%rax), %r12
cmpb $0xb, (%r14)
jne 0xba3a4
cmpb $0xb, (%r15)
jne 0xba3a4
cmpb $0xb, (%r12)
jne 0xba3a4
cmpq %r15, %r14
setae %al
cmpq %r12, %r15
setae %cl
orb %al, %cl
movzbl %cl, %eax
leaq 0x118(,%rax,8), %rcx
jmp 0xba40f
movzbl (%r12), %eax
leaq 0x98600(%rip), %rcx     # 0x1529b0
cmpb $0x0, (%rax,%rcx)
jne 0xba3e1
movq 0x12c0(%rbx), %rax
movq 0x8(%rax), %rsi
movq 0x945a0(%rip), %rdx     # 0x14e968
movq 0x140(%rbx), %r8
movq 0x986f2(%rip), %r9      # 0x152ac8
movq %rbx, %rdi
movq %r12, %rcx
callq 0xb31d
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rdx
callq 0x8ffe4
testb %al, %al
je 0xba40a
movq %rbx, %rdi
movq %r15, %rsi
movq %r12, %rdx
callq 0x8ffe4
movl $0x118, %ecx            # imm = 0x118
testb %al, %al
jne 0xba40f
movl $0x120, %ecx            # imm = 0x120
movq (%rbx,%rcx), %rax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
cmpb $0x1c, (%rdi)
jne 0xba453
movq 0x8(%rdi), %r9
testq %r9, %r9
sete %r8b
je 0xba441
cmpq %rsi, 0x8(%r9)
je 0xba43d
movq 0x18(%r9), %r9
jmp 0xba428
movq 0x10(%r9), %r15
testb %r8b, %r8b
je 0xba329
movq 0x10(%rdi), %rdi
cmpb $0x1c, (%rdi)
je 0xba424
movq 0x10(%rsi), %rsi
cmpb $0x20, (%rsi)
je 0xba325
xorl %r15d, %r15d
jmp 0xba329
cmpb $0x1c, (%rax)
jne 0xba49a
movq 0x8(%rax), %rdx
testq %rdx, %rdx
sete %cl
je 0xba489
cmpq %rsi, 0x8(%rdx)
je 0xba485
movq 0x18(%rdx), %rdx
jmp 0xba471
movq 0x10(%rdx), %r14
testb %cl, %cl
je 0xba2cd
movq 0x10(%rax), %rax
cmpb $0x1c, (%rax)
je 0xba46d
movq 0x10(%rsi), %rax
cmpb $0x20, (%rax)
je 0xba2c9
xorl %r14d, %r14d
jmp 0xba2cd
cmpb $0x1c, (%rax)
jne 0xba4e1
movq 0x8(%rax), %rdx
testq %rdx, %rdx
sete %cl
je 0xba4d0
cmpq %rsi, 0x8(%rdx)
je 0xba4cc
movq 0x18(%rdx), %rdx
jmp 0xba4b8
movq 0x10(%rdx), %r12
testb %cl, %cl
je 0xba35c
movq 0x10(%rax), %rax
cmpb $0x1c, (%rax)
je 0xba4b4
movq 0x10(%rsi), %rax
cmpb $0x20, (%rax)
je 0xba358
xorl %r12d, %r12d
jmp 0xba35c