// File: /workspace/github_c_makefile_star2_O3/mmcco[P]sljit/sljit_src/sljitLir.c
// Function: sljit_emit_fcmp
struct sljit_jump* sljit_emit_fcmp(struct sljit_compiler *compiler, int type,
	int src1, long src1w,
	int src2, long src2w)
{
	int flags, condition;

	CHECK_ERROR_PTR();
	CHECK_PTR(check_sljit_emit_fcmp(compiler, type, src1, src1w, src2, src2w));

	condition = type & 0xff;
	flags = (condition <= SLJIT_D_NOT_EQUAL) ? SLJIT_SET_E : SLJIT_SET_S;
	if (type & SLJIT_SINGLE_OP)
		flags |= SLJIT_SINGLE_OP;

#if (defined SLJIT_VERBOSE && SLJIT_VERBOSE) \
		|| (defined SLJIT_ARGUMENT_CHECKS && SLJIT_ARGUMENT_CHECKS)
	compiler->skip_checks = 1;
#endif
	sljit_emit_fop1(compiler, SLJIT_DCMP | flags, src1, src1w, src2, src2w);

#if (defined SLJIT_VERBOSE && SLJIT_VERBOSE) \
		|| (defined SLJIT_ARGUMENT_CHECKS && SLJIT_ARGUMENT_CHECKS)
	compiler->skip_checks = 1;
#endif
	return sljit_emit_jump(compiler, condition | (type & SLJIT_REWRITABLE_JUMP));
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
cmpl $0x0, (%rdi)
je 0x1ef57
xorl %eax, %eax
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl %esi, %ebx
testl $0xffffee00, %esi       # imm = 0xFFFFEE00
jne 0x1f556
movl %edx, %ebp
movzbl %bl, %eax
leal -0xe(%rax), %edx
cmpl $0x8, %edx
jae 0x1f564
movq %rdi, %r14
movl 0x50(%rdi), %edx
cmpl $-0x1, %edx
je 0x1f524
movl 0x54(%r14), %r11d
cmpl $-0x1, %r11d
je 0x1f524
movl %r8d, %r12d
testl %ebp, %ebp
setg %sil
cmpl %ebp, %edx
setge %dil
testb %dil, %sil
jne 0x1efc5
movl $0x6, %esi
subl %r11d, %esi
cmpl %ebp, %esi
setge %sil
cmpl $0x7, %ebp
setge %dil
orb %sil, %dil
jne 0x1f0db
testq %rcx, %rcx
jne 0x1f524
testl %r12d, %r12d
setg %sil
cmpl %r12d, %edx
setge %dl
testb %dl, %sil
jne 0x1efff
movl $0x6, %edx
subl %r11d, %edx
cmpl %r12d, %edx
setge %sil
cmpl $0x7, %r12d
setge %dl
orb %sil, %dl
jne 0x1f101
testq %r9, %r9
jne 0x1f548
movq %rcx, 0x10(%rsp)
movq 0x78(%r14), %rdi
testq %rdi, %rdi
je 0x1f090
movq %r9, 0x8(%rsp)
cmpl $0x1000, %ebx           # imm = 0x1000
leaq 0x1410(%rip), %rcx      # 0x20438
leaq 0x45c2(%rip), %rdx      # 0x235f1
cmovbq %rcx, %rdx
movl %ebx, %r13d
andl $0x100, %r13d           # imm = 0x100
leaq 0x45b6(%rip), %rsi      # 0x235fa
leaq 0x45ac(%rip), %rcx      # 0x235f7
cmoveq %rsi, %rcx
movl %eax, %eax
leaq 0x8ca8(%rip), %rsi      # 0x27d00
movq (%rsi,%rax,8), %r8
leaq 0x467c(%rip), %rsi      # 0x236df
xorl %eax, %eax
callq 0x20c0
movq 0x78(%r14), %rax
testb %bpl, %bpl
js 0x1f09f
cmpl %ebp, 0x50(%r14)
jge 0x1f12c
movl $0x6, %edx
subl %ebp, %edx
leaq 0x4516(%rip), %rsi      # 0x235a1
jmp 0x1f136
movl %ebx, %r13d
andl $0x100, %r13d           # imm = 0x100
jmp 0x1f4b4
movl %ebp, %r15d
andl $0x3f, %r15d
je 0x1f271
movl $0x5b, %edi
movq %rax, %rsi
callq 0x20a0
movq 0x78(%r14), %rdi
cmpl 0x48(%r14), %r15d
jle 0x1f28c
movl $0xc, %edx
subl %r15d, %edx
leaq 0x44cc(%rip), %rsi      # 0x235a2
jmp 0x1f299
cmpl $0x8d, %ebp
jne 0x1f145
testq %rcx, %rcx
js 0x1f524
movslq 0x80(%r14), %rsi
cmpq %rcx, %rsi
jg 0x1efce
jmp 0x1f524
cmpl $0x8d, %r12d
jne 0x1f1dd
testq %r9, %r9
js 0x1f548
movslq 0x80(%r14), %rdx
cmpq %r9, %rdx
jg 0x1f008
jmp 0x1f548
leal -0x1(%rbp), %edx
leaq 0x4466(%rip), %rsi      # 0x2359c
movq %rax, %rdi
xorl %eax, %eax
callq 0x20c0
jmp 0x1f345
testb %bpl, %bpl
jns 0x1f524
movl %ebp, %esi
andl $0x3f, %esi
je 0x1f510
movl 0x48(%r14), %edi
cmpl %edi, %esi
jle 0x1f17d
cmpl $0xc, %esi
ja 0x1f524
movl $0xc, %r8d
subl 0x4c(%r14), %r8d
cmpl %r8d, %esi
jle 0x1f524
movl %ebp, %esi
andl $0x3f00, %esi           # imm = 0x3F00
je 0x1f518
movl %ebp, %r8d
shrl $0x8, %r8d
andl $0x3f, %r8d
setne %r10b
cmpl %edi, %r8d
setle %dil
testb %dil, %r10b
jne 0x1f1c2
cmpl $0xc, %r8d
ja 0x1f524
movl $0xc, %edi
subl 0x4c(%r14), %edi
cmpl %edi, %r8d
jle 0x1f524
cmpl $0xd00, %esi            # imm = 0xD00
je 0x1f524
cmpq $0x4, %rcx
jb 0x1f518
jmp 0x1f524
testb %r12b, %r12b
jns 0x1f548
movl %r12d, %edi
andl $0x3f, %edi
je 0x1f532
movl 0x48(%r14), %edx
cmpl %edx, %edi
jle 0x1f214
cmpl $0xc, %edi
ja 0x1f548
movl $0xc, %esi
subl 0x4c(%r14), %esi
cmpl %esi, %edi
jle 0x1f548
movl %r12d, %r8d
andl $0x3f00, %r8d           # imm = 0x3F00
je 0x1f53b
movl %r12d, %esi
shrl $0x8, %esi
andl $0x3f, %esi
setne %dil
cmpl %edx, %esi
setle %dl
testb %dl, %dil
jne 0x1f255
cmpl $0xc, %esi
ja 0x1f548
movl $0xc, %edx
subl 0x4c(%r14), %edx
cmpl %edx, %esi
jle 0x1f548
cmpl $0xd00, %r8d            # imm = 0xD00
je 0x1f548
cmpq $0x4, %r9
jb 0x1f53b
jmp 0x1f548
leaq 0x41df(%rip), %rsi      # 0x23457
movq %rax, %rdi
movq 0x10(%rsp), %rdx
xorl %eax, %eax
callq 0x20c0
jmp 0x1f345
decl %r15d
leaq 0x4307(%rip), %rsi      # 0x2359d
movl %r15d, %edx
xorl %eax, %eax
callq 0x20c0
testl $0x3f00, %ebp           # imm = 0x3F00
je 0x1f2e6
movq 0x78(%r14), %rcx
leaq 0x4193(%rip), %rdi      # 0x23446
movl $0x3, %esi
movl $0x1, %edx
callq 0x2130
movl %ebp, %edx
shrl $0x8, %edx
andl $0x3f, %edx
movq 0x78(%r14), %rdi
cmpl 0x48(%r14), %edx
jle 0x1f304
movl $0xc, %eax
subl %edx, %eax
leaq 0x42c0(%rip), %rsi      # 0x235a2
movl %eax, %edx
jmp 0x1f30d
movq 0x10(%rsp), %rdx
testq %rdx, %rdx
je 0x1f337
movq 0x78(%r14), %rdi
leaq 0x4158(%rip), %rsi      # 0x23453
xorl %eax, %eax
callq 0x20c0
jmp 0x1f337
decl %edx
leaq 0x4290(%rip), %rsi      # 0x2359d
xorl %eax, %eax
callq 0x20c0
movq 0x10(%rsp), %rcx
testq %rcx, %rcx
je 0x1f337
movq 0x78(%r14), %rdi
movl $0x1, %edx
shll %cl, %edx
leaq 0x411d(%rip), %rsi      # 0x2344d
xorl %eax, %eax
callq 0x20c0
movq 0x78(%r14), %rsi
movl $0x5d, %edi
callq 0x20a0
movq 0x78(%r14), %rcx
leaq 0x4203(%rip), %rdi      # 0x23553
movl $0x2, %esi
movl $0x1, %edx
callq 0x2130
movq 0x78(%r14), %rax
testb %r12b, %r12b
js 0x1f37f
cmpl %r12d, 0x50(%r14)
jge 0x1f3b0
movl $0x6, %edx
subl %r12d, %edx
leaq 0x4224(%rip), %rsi      # 0x235a1
jmp 0x1f3bc
movl %r12d, %r15d
andl $0x3f, %r15d
je 0x1f3cb
movl $0x5b, %edi
movq %rax, %rsi
callq 0x20a0
movq 0x78(%r14), %rdi
cmpl 0x48(%r14), %r15d
jle 0x1f3e6
movl $0xc, %edx
subl %r15d, %edx
leaq 0x41f4(%rip), %rsi      # 0x235a2
jmp 0x1f3f3
leal -0x1(%r12), %edx
leaq 0x41e0(%rip), %rsi      # 0x2359c
movq %rax, %rdi
xorl %eax, %eax
callq 0x20c0
jmp 0x1f4a1
leaq 0x4085(%rip), %rsi      # 0x23457
movq %rax, %rdi
movq 0x8(%rsp), %rdx
xorl %eax, %eax
callq 0x20c0
jmp 0x1f4a1
decl %r15d
leaq 0x41ad(%rip), %rsi      # 0x2359d
movl %r15d, %edx
xorl %eax, %eax
callq 0x20c0
testl $0x3f00, %r12d          # imm = 0x3F00
je 0x1f442
movq 0x78(%r14), %rcx
leaq 0x4038(%rip), %rdi      # 0x23446
movl $0x3, %esi
movl $0x1, %edx
callq 0x2130
movl %r12d, %edx
shrl $0x8, %edx
andl $0x3f, %edx
movq 0x78(%r14), %rdi
cmpl 0x48(%r14), %edx
jle 0x1f460
movl $0xc, %eax
subl %edx, %eax
leaq 0x4164(%rip), %rsi      # 0x235a2
movl %eax, %edx
jmp 0x1f469
movq 0x8(%rsp), %rdx
testq %rdx, %rdx
je 0x1f493
movq 0x78(%r14), %rdi
leaq 0x3ffc(%rip), %rsi      # 0x23453
xorl %eax, %eax
callq 0x20c0
jmp 0x1f493
decl %edx
leaq 0x4134(%rip), %rsi      # 0x2359d
xorl %eax, %eax
callq 0x20c0
movq 0x8(%rsp), %rcx
testq %rcx, %rcx
je 0x1f493
movq 0x78(%r14), %rdi
movl $0x1, %edx
shll %cl, %edx
leaq 0x3fc1(%rip), %rsi      # 0x2344d
xorl %eax, %eax
callq 0x20c0
movq 0x78(%r14), %rsi
movl $0x5d, %edi
callq 0x20a0
movq 0x78(%r14), %rsi
movl $0xa, %edi
callq 0x20a0
movq 0x8(%rsp), %r9
testb $-0x10, %bl
movl $0x200, %eax            # imm = 0x200
movl $0x800, %ecx            # imm = 0x800
cmovel %eax, %ecx
movl $0x1, %r15d
movl %r15d, 0x84(%r14)
leal 0x86(%r13,%rcx), %esi
movq %r14, %rdi
movl %ebp, %edx
movq 0x10(%rsp), %rcx
movl %r12d, %r8d
callq 0x1a56e
movl %r15d, 0x84(%r14)
andl $0x10ff, %ebx           # imm = 0x10FF
movq %r14, %rdi
movl %ebx, %esi
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1d10b
testl $0x3f00, %ebp           # imm = 0x3F00
jne 0x1f524
cmpl $0x4000, %ebp           # imm = 0x4000
jb 0x1efce
leaq 0x3e14(%rip), %rdi      # 0x2333f
movl $0x548, %esi            # imm = 0x548
jmp 0x1f570
testl $0x3f00, %r12d          # imm = 0x3F00
jne 0x1f548
cmpl $0x4000, %r12d          # imm = 0x4000
jb 0x1f008
leaq 0x3df0(%rip), %rdi      # 0x2333f
movl $0x549, %esi            # imm = 0x549
jmp 0x1f570
leaq 0x3de2(%rip), %rdi      # 0x2333f
movl $0x546, %esi            # imm = 0x546
jmp 0x1f570
leaq 0x3dd4(%rip), %rdi      # 0x2333f
movl $0x547, %esi            # imm = 0x547
xorl %eax, %eax
callq 0x2080
callq 0x2040