LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: out_func_tmp_label
static void _out_func_tmp_label(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr
) {
	assert(ctx);
	assert(ctx->func_symbol);
	assert(rstr);

	size_t no = BE_FUNC_SYMBOL_NEXT_NO(ctx->func_symbol);
	ResizableString rstr_no;
	rstr_init(&rstr_no);
	rstr_appendf(&rstr_no, "%zu", no);

	__out_label(ctx, rstr, "FUNC_TMP", RSTR_CSTR(&rstr_no));

	rstr_free(&rstr_no);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x23c49
jmp 0x23c68
leaq 0x5c511(%rip), %rdi     # 0x80161
leaq 0x51ca1(%rip), %rsi     # 0x758f8
movl $0x27f, %edx            # imm = 0x27F
leaq 0x5424f(%rip), %rcx     # 0x77eb2
callq 0x30a0
movq -0x8(%rbp), %rax
cmpq $0x0, 0x58(%rax)
je 0x23c75
jmp 0x23c94
leaq 0x52422(%rip), %rdi     # 0x7609e
leaq 0x51c75(%rip), %rsi     # 0x758f8
movl $0x280, %edx            # imm = 0x280
leaq 0x54223(%rip), %rcx     # 0x77eb2
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x23c9d
jmp 0x23cbc
leaq 0x4fe69(%rip), %rdi     # 0x73b0d
leaq 0x51c4d(%rip), %rsi     # 0x758f8
movl $0x281, %edx            # imm = 0x281
leaq 0x541fb(%rip), %rcx     # 0x77eb2
callq 0x30a0
movq -0x8(%rbp), %rax
movq 0x58(%rax), %rcx
movl 0x54(%rcx), %eax
movl %eax, %edx
addl $0x1, %edx
movl %edx, 0x54(%rcx)
movl %eax, %eax
movq %rax, -0x18(%rbp)
leaq -0x28(%rbp), %rdi
callq 0x8c90
movq -0x18(%rbp), %rdx
leaq -0x28(%rbp), %rdi
leaq 0x546d4(%rip), %rsi     # 0x783c1
movb $0x0, %al
callq 0x94d0
movq -0x8(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x30(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x23d18
leaq 0x5222d(%rip), %rax     # 0x75f3f
movq %rax, -0x40(%rbp)
jmp 0x23d20
movq -0x20(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x30(%rbp), %rsi
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rcx
leaq 0x541c7(%rip), %rdx     # 0x77efa
callq 0x118c0
leaq -0x28(%rbp), %rdi
callq 0x9310
addq $0x40, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_js_x
static void _asm_inst_js_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target
) {
	assert(ctx);
	assert(rstr);
	assert(target);

	const char *mnemonic = "js";

	_asm_inst1(ctx, rstr, mnemonic, target);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x23d6d
jmp 0x23d8c
leaq 0x5c3ed(%rip), %rdi     # 0x80161
leaq 0x51b7d(%rip), %rsi     # 0x758f8
movl $0x443, %edx            # imm = 0x443
leaq 0x5417c(%rip), %rcx     # 0x77f03
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x23d95
jmp 0x23db4
leaq 0x4fd71(%rip), %rdi     # 0x73b0d
leaq 0x51b55(%rip), %rsi     # 0x758f8
movl $0x444, %edx            # imm = 0x444
leaq 0x54154(%rip), %rcx     # 0x77f03
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x23dbd
jmp 0x23ddc
leaq 0x5b570(%rip), %rdi     # 0x7f334
leaq 0x51b2d(%rip), %rsi     # 0x758f8
movl $0x445, %edx            # imm = 0x445
leaq 0x5412c(%rip), %rcx     # 0x77f03
callq 0x30a0
leaq 0x54171(%rip), %rax     # 0x77f54
movq %rax, -0x20(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x20(%rbp), %rdx
movq -0x18(%rbp), %rcx
callq 0x223d0
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_setc_x
static void _asm_inst_setc_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target
) {
	assert(ctx);
	assert(rstr);
	assert(target);

	const char *mnemonic = "setc";

	_asm_inst1(
		ctx,
		rstr,
		mnemonic,
		target
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x23f3d
jmp 0x23f5c
leaq 0x5c21d(%rip), %rdi     # 0x80161
leaq 0x519ad(%rip), %rsi     # 0x758f8
movl $0x83b, %edx            # imm = 0x83B
leaq 0x5405f(%rip), %rcx     # 0x77fb6
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x23f65
jmp 0x23f84
leaq 0x4fba1(%rip), %rdi     # 0x73b0d
leaq 0x51985(%rip), %rsi     # 0x758f8
movl $0x83c, %edx            # imm = 0x83C
leaq 0x54037(%rip), %rcx     # 0x77fb6
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x23f8d
jmp 0x23fac
leaq 0x5b3a0(%rip), %rdi     # 0x7f334
leaq 0x5195d(%rip), %rsi     # 0x758f8
movl $0x83d, %edx            # imm = 0x83D
leaq 0x5400f(%rip), %rcx     # 0x77fb6
callq 0x30a0
leaq 0x54056(%rip), %rax     # 0x78009
movq %rax, -0x20(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x20(%rbp), %rdx
movq -0x18(%rbp), %rcx
callq 0x223d0
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_addss_x_x
static void _asm_inst_addss_x_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target,
	const char *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	const char *mnemonic = "addss";

	_asm_inst2(
		ctx,
		rstr,
		mnemonic,
		source,
		target
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x24141
jmp 0x24160
leaq 0x5c019(%rip), %rdi     # 0x80161
leaq 0x517a9(%rip), %rsi     # 0x758f8
movl $0x6a9, %edx            # imm = 0x6A9
leaq 0x53f22(%rip), %rcx     # 0x7807d
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x24169
jmp 0x24188
leaq 0x4f99d(%rip), %rdi     # 0x73b0d
leaq 0x51781(%rip), %rsi     # 0x758f8
movl $0x6aa, %edx            # imm = 0x6AA
leaq 0x53efa(%rip), %rcx     # 0x7807d
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x24191
jmp 0x241b0
leaq 0x5b19c(%rip), %rdi     # 0x7f334
leaq 0x51759(%rip), %rsi     # 0x758f8
movl $0x6ab, %edx            # imm = 0x6AB
leaq 0x53ed2(%rip), %rcx     # 0x7807d
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x241b9
jmp 0x241d8
leaq 0x58074(%rip), %rdi     # 0x7c234
leaq 0x51731(%rip), %rsi     # 0x758f8
movl $0x6ac, %edx            # imm = 0x6AC
leaq 0x53eaa(%rip), %rcx     # 0x7807d
callq 0x30a0
leaq 0x53f02(%rip), %rax     # 0x780e1
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x28(%rbp), %rdx
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %r8
callq 0x21140
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_addsd_x_x
static void _asm_inst_addsd_x_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target,
	const char *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	const char *mnemonic = "addsd";

	_asm_inst2(
		ctx,
		rstr,
		mnemonic,
		source,
		target
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x24231
jmp 0x24250
leaq 0x5bf29(%rip), %rdi     # 0x80161
leaq 0x516b9(%rip), %rsi     # 0x758f8
movl $0x6c3, %edx            # imm = 0x6C3
leaq 0x53e9c(%rip), %rcx     # 0x780e7
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x24259
jmp 0x24278
leaq 0x4f8ad(%rip), %rdi     # 0x73b0d
leaq 0x51691(%rip), %rsi     # 0x758f8
movl $0x6c4, %edx            # imm = 0x6C4
leaq 0x53e74(%rip), %rcx     # 0x780e7
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x24281
jmp 0x242a0
leaq 0x5b0ac(%rip), %rdi     # 0x7f334
leaq 0x51669(%rip), %rsi     # 0x758f8
movl $0x6c5, %edx            # imm = 0x6C5
leaq 0x53e4c(%rip), %rcx     # 0x780e7
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x242a9
jmp 0x242c8
leaq 0x57f84(%rip), %rdi     # 0x7c234
leaq 0x51641(%rip), %rsi     # 0x758f8
movl $0x6c6, %edx            # imm = 0x6C6
leaq 0x53e24(%rip), %rcx     # 0x780e7
callq 0x30a0
leaq 0x53e7c(%rip), %rax     # 0x7814b
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x28(%rbp), %rdx
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %r8
callq 0x21140
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_cvttss2si_x_x
static void _asm_inst_cvttss2si_x_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target,
	const char *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	const char *mnemonic = "cvttss2si";

	_asm_inst2(
		ctx,
		rstr,
		mnemonic,
		source,
		target
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x248d1
jmp 0x248f0
leaq 0x5b889(%rip), %rdi     # 0x80161
leaq 0x51019(%rip), %rsi     # 0x758f8
movl $0x8b9, %edx            # imm = 0x8B9
leaq 0x53b08(%rip), %rcx     # 0x783f3
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x248f9
jmp 0x24918
leaq 0x4f20d(%rip), %rdi     # 0x73b0d
leaq 0x50ff1(%rip), %rsi     # 0x758f8
movl $0x8ba, %edx            # imm = 0x8BA
leaq 0x53ae0(%rip), %rcx     # 0x783f3
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x24921
jmp 0x24940
leaq 0x5aa0c(%rip), %rdi     # 0x7f334
leaq 0x50fc9(%rip), %rsi     # 0x758f8
movl $0x8bb, %edx            # imm = 0x8BB
leaq 0x53ab8(%rip), %rcx     # 0x783f3
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x24949
jmp 0x24968
leaq 0x578e4(%rip), %rdi     # 0x7c234
leaq 0x50fa1(%rip), %rsi     # 0x758f8
movl $0x8bc, %edx            # imm = 0x8BC
leaq 0x53a90(%rip), %rcx     # 0x783f3
callq 0x30a0
leaq 0x53aec(%rip), %rax     # 0x7845b
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x28(%rbp), %rdx
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %r8
callq 0x21140
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_cvttsd2si_x_x
static void _asm_inst_cvttsd2si_x_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target,
	const char *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	const char *mnemonic = "cvttsd2si";

	_asm_inst2(
		ctx,
		rstr,
		mnemonic,
		source,
		target
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x249c1
jmp 0x249e0
leaq 0x5b799(%rip), %rdi     # 0x80161
leaq 0x50f29(%rip), %rsi     # 0x758f8
movl $0x8d3, %edx            # imm = 0x8D3
leaq 0x53a8a(%rip), %rcx     # 0x78465
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x249e9
jmp 0x24a08
leaq 0x4f11d(%rip), %rdi     # 0x73b0d
leaq 0x50f01(%rip), %rsi     # 0x758f8
movl $0x8d4, %edx            # imm = 0x8D4
leaq 0x53a62(%rip), %rcx     # 0x78465
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x24a11
jmp 0x24a30
leaq 0x5a91c(%rip), %rdi     # 0x7f334
leaq 0x50ed9(%rip), %rsi     # 0x758f8
movl $0x8d5, %edx            # imm = 0x8D5
leaq 0x53a3a(%rip), %rcx     # 0x78465
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x24a39
jmp 0x24a58
leaq 0x577f4(%rip), %rdi     # 0x7c234
leaq 0x50eb1(%rip), %rsi     # 0x758f8
movl $0x8d6, %edx            # imm = 0x8D6
leaq 0x53a12(%rip), %rcx     # 0x78465
callq 0x30a0
leaq 0x53a6e(%rip), %rax     # 0x784cd
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x28(%rbp), %rdx
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %r8
callq 0x21140
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_movss_x_sym
static void _asm_inst_movss_x_sym(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target,
	ParserSymbol *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	_asm_inst_movss_x_x(
		ctx,
		rstr,
		target,
		RSTR_CSTR(BE_VAR_SYMBOL_GET_CODE_GEN_NAME(source))
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x24ab1
jmp 0x24ad0
leaq 0x5b6a9(%rip), %rdi     # 0x80161
leaq 0x50e39(%rip), %rsi     # 0x758f8
movl $0x549, %edx            # imm = 0x549
leaq 0x5375a(%rip), %rcx     # 0x78225
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x24ad9
jmp 0x24af8
leaq 0x4f02d(%rip), %rdi     # 0x73b0d
leaq 0x50e11(%rip), %rsi     # 0x758f8
movl $0x54a, %edx            # imm = 0x54A
leaq 0x53732(%rip), %rcx     # 0x78225
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x24b01
jmp 0x24b20
leaq 0x5a82c(%rip), %rdi     # 0x7f334
leaq 0x50de9(%rip), %rsi     # 0x758f8
movl $0x54b, %edx            # imm = 0x54B
leaq 0x5370a(%rip), %rcx     # 0x78225
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x24b29
jmp 0x24b48
leaq 0x57704(%rip), %rdi     # 0x7c234
leaq 0x50dc1(%rip), %rsi     # 0x758f8
movl $0x54c, %edx            # imm = 0x54C
leaq 0x536e2(%rip), %rcx     # 0x78225
callq 0x30a0
movq -0x8(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x30(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x58(%rax)
jne 0x24b78
leaq 0x513cd(%rip), %rax     # 0x75f3f
movq %rax, -0x40(%rbp)
jmp 0x24b84
movq -0x20(%rbp), %rax
movq 0x58(%rax), %rax
movq %rax, -0x40(%rbp)
movq -0x28(%rbp), %rdx
movq -0x30(%rbp), %rsi
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rcx
callq 0x237b0
addq $0x40, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_movsd_x_sym
static void _asm_inst_movsd_x_sym(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target,
	ParserSymbol *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	_asm_inst_movsd_x_x(
		ctx,
		rstr,
		target,
		RSTR_CSTR(BE_VAR_SYMBOL_GET_CODE_GEN_NAME(source))
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x24bc1
jmp 0x24be0
leaq 0x5b599(%rip), %rdi     # 0x80161
leaq 0x50d29(%rip), %rsi     # 0x758f8
movl $0x589, %edx            # imm = 0x589
leaq 0x536b2(%rip), %rcx     # 0x7828d
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x24be9
jmp 0x24c08
leaq 0x4ef1d(%rip), %rdi     # 0x73b0d
leaq 0x50d01(%rip), %rsi     # 0x758f8
movl $0x58a, %edx            # imm = 0x58A
leaq 0x5368a(%rip), %rcx     # 0x7828d
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x24c11
jmp 0x24c30
leaq 0x5a71c(%rip), %rdi     # 0x7f334
leaq 0x50cd9(%rip), %rsi     # 0x758f8
movl $0x58b, %edx            # imm = 0x58B
leaq 0x53662(%rip), %rcx     # 0x7828d
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x24c39
jmp 0x24c58
leaq 0x575f4(%rip), %rdi     # 0x7c234
leaq 0x50cb1(%rip), %rsi     # 0x758f8
movl $0x58c, %edx            # imm = 0x58C
leaq 0x5363a(%rip), %rcx     # 0x7828d
callq 0x30a0
movq -0x8(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x30(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x20(%rbp), %rax
cmpq $0x0, 0x58(%rax)
jne 0x24c88
leaq 0x512bd(%rip), %rax     # 0x75f3f
movq %rax, -0x40(%rbp)
jmp 0x24c94
movq -0x20(%rbp), %rax
movq 0x58(%rax), %rax
movq %rax, -0x40(%rbp)
movq -0x28(%rbp), %rdx
movq -0x30(%rbp), %rsi
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rcx
callq 0x238a0
addq $0x40, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: new_float
static void _new_float(
	ASMGeneratorGas32Context *ctx,
	ResizableString *name,
	float value
) {
	assert(ctx);

	// .section __TEXT,__literal4,4byte_literals
	// .p2align 2
	// _FLOAT.[X]:
	// .4byte [VALUE]

	size_t no = _next_no(ctx);

	if (name != NULL) {
		rstr_appendf(name, "_FLOAT.%zu", no);
	}

	// rstr_append_with_cstr(
	// 	ctx->head,
	// 	".section __TEXT,__literal4,4byte_literals\n"
	// 		".p2align 2\n"
	// );
	rstr_append_with_cstr(
		ctx->head,
		".text\n"
			".p2align 2\n"
	);

	rstr_appendf(
		ctx->head,
		"_FLOAT.%zu:\n",
		no
	);
	rstr_appendf(
		ctx->head,
		".4byte %u\n\n",
		*(uint32_t *)&value
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movss %xmm0, -0x14(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x24cce
jmp 0x24ced
leaq 0x5b48c(%rip), %rdi     # 0x80161
leaq 0x50c1c(%rip), %rsi     # 0x758f8
movl $0x86, %edx
leaq 0x5360d(%rip), %rcx     # 0x782f5
callq 0x30a0
movq -0x8(%rbp), %rdi
callq 0x11790
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x24d17
movq -0x10(%rbp), %rdi
movq -0x20(%rbp), %rdx
leaq 0x5362b(%rip), %rsi     # 0x7833b
movb $0x0, %al
callq 0x94d0
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rdi
leaq 0x53620(%rip), %rsi     # 0x78346
callq 0x8d70
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rdi
movq -0x20(%rbp), %rdx
leaq 0x5361a(%rip), %rsi     # 0x78358
movb $0x0, %al
callq 0x94d0
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rdi
movl -0x14(%rbp), %edx
leaq 0x5360e(%rip), %rsi     # 0x78365
movb $0x0, %al
callq 0x94d0
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: new_double
static void _new_double(
	ASMGeneratorGas32Context *ctx,
	ResizableString *name,
	double value
) {
	assert(ctx);

	// .section __TEXT,__literal8,8byte_literals
	// .p2align 3
	// _DOUBLE.[X]:
	// .8byte [VALUE]

	size_t no = _next_no(ctx);

	if (name != NULL) {
		rstr_appendf(name, "_DOUBLE.%zu", no);
	}

	// rstr_append_with_cstr(
	// 	ctx->head,
	// 	".section __TEXT,__literal8,8byte_literals\n"
	// 		".p2align 3\n"
	// );
	rstr_append_with_cstr(
		ctx->head,
		".text\n"
			".p2align 3\n"
	);

	rstr_appendf(
		ctx->head,
		"_DOUBLE.%zu:\n",
		no
	);
	rstr_appendf(
		ctx->head,
		".8byte %llu\n\n",
		*(uint64_t *)&value
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movsd %xmm0, -0x18(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x24d8e
jmp 0x24dad
leaq 0x5b3cc(%rip), %rdi     # 0x80161
leaq 0x50b5c(%rip), %rsi     # 0x758f8
movl $0xaf, %edx
leaq 0x535c9(%rip), %rcx     # 0x78371
callq 0x30a0
movq -0x8(%rbp), %rdi
callq 0x11790
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x24dd7
movq -0x10(%rbp), %rdi
movq -0x20(%rbp), %rdx
leaq 0x535e9(%rip), %rsi     # 0x783b9
movb $0x0, %al
callq 0x94d0
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rdi
leaq 0x535df(%rip), %rsi     # 0x783c5
callq 0x8d70
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rdi
movq -0x20(%rbp), %rdx
leaq 0x535d9(%rip), %rsi     # 0x783d7
movb $0x0, %al
callq 0x94d0
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rdi
movq -0x18(%rbp), %rdx
leaq 0x535cd(%rip), %rsi     # 0x783e5
movb $0x0, %al
callq 0x94d0
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_cvtss2sd_x_x
static void _asm_inst_cvtss2sd_x_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target,
	const char *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	const char *mnemonic = "cvtss2sd";

	_asm_inst2(
		ctx,
		rstr,
		mnemonic,
		source,
		target
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x24e51
jmp 0x24e70
leaq 0x5b309(%rip), %rdi     # 0x80161
leaq 0x50a99(%rip), %rsi     # 0x758f8
movl $0x8ed, %edx            # imm = 0x8ED
leaq 0x53734(%rip), %rcx     # 0x7859f
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x24e79
jmp 0x24e98
leaq 0x4ec8d(%rip), %rdi     # 0x73b0d
leaq 0x50a71(%rip), %rsi     # 0x758f8
movl $0x8ee, %edx            # imm = 0x8EE
leaq 0x5370c(%rip), %rcx     # 0x7859f
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x24ea1
jmp 0x24ec0
leaq 0x5a48c(%rip), %rdi     # 0x7f334
leaq 0x50a49(%rip), %rsi     # 0x758f8
movl $0x8ef, %edx            # imm = 0x8EF
leaq 0x536e4(%rip), %rcx     # 0x7859f
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x24ec9
jmp 0x24ee8
leaq 0x57364(%rip), %rdi     # 0x7c234
leaq 0x50a21(%rip), %rsi     # 0x758f8
movl $0x8f0, %edx            # imm = 0x8F0
leaq 0x536bc(%rip), %rcx     # 0x7859f
callq 0x30a0
leaq 0x53717(%rip), %rax     # 0x78606
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x28(%rbp), %rdx
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %r8
callq 0x21140
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_cvtsd2ss_x_x
static void _asm_inst_cvtsd2ss_x_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target,
	const char *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	const char *mnemonic = "cvtsd2ss";

	_asm_inst2(
		ctx,
		rstr,
		mnemonic,
		source,
		target
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x24f41
jmp 0x24f60
leaq 0x5b219(%rip), %rdi     # 0x80161
leaq 0x509a9(%rip), %rsi     # 0x758f8
movl $0x907, %edx            # imm = 0x907
leaq 0x5371b(%rip), %rcx     # 0x78676
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x24f69
jmp 0x24f88
leaq 0x4eb9d(%rip), %rdi     # 0x73b0d
leaq 0x50981(%rip), %rsi     # 0x758f8
movl $0x908, %edx            # imm = 0x908
leaq 0x536f3(%rip), %rcx     # 0x78676
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x24f91
jmp 0x24fb0
leaq 0x5a39c(%rip), %rdi     # 0x7f334
leaq 0x50959(%rip), %rsi     # 0x758f8
movl $0x909, %edx            # imm = 0x909
leaq 0x536cb(%rip), %rcx     # 0x78676
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x24fb9
jmp 0x24fd8
leaq 0x57274(%rip), %rdi     # 0x7c234
leaq 0x50931(%rip), %rsi     # 0x758f8
movl $0x90a, %edx            # imm = 0x90A
leaq 0x536a3(%rip), %rcx     # 0x78676
callq 0x30a0
leaq 0x536fe(%rip), %rax     # 0x786dd
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x28(%rbp), %rdx
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %r8
callq 0x21140
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_call_x
static void _asm_inst_call_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *func
) {
	assert(ctx);
	assert(rstr);
	assert(func);

	const char *mnemonic = "calll";

	_asm_inst1(
		ctx,
		rstr,
		mnemonic,
		func
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x2535d
jmp 0x2537c
leaq 0x5adfd(%rip), %rdi     # 0x80161
leaq 0x5058d(%rip), %rsi     # 0x758f8
movl $0x6dc, %edx            # imm = 0x6DC
leaq 0x5353c(%rip), %rcx     # 0x788b3
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x25385
jmp 0x253a4
leaq 0x4e781(%rip), %rdi     # 0x73b0d
leaq 0x50565(%rip), %rsi     # 0x758f8
movl $0x6dd, %edx            # imm = 0x6DD
leaq 0x53514(%rip), %rcx     # 0x788b3
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x253ad
jmp 0x253cc
leaq 0x53552(%rip), %rdi     # 0x78906
leaq 0x5053d(%rip), %rsi     # 0x758f8
movl $0x6de, %edx            # imm = 0x6DE
leaq 0x534ec(%rip), %rcx     # 0x788b3
callq 0x30a0
leaq 0x53538(%rip), %rax     # 0x7890b
movq %rax, -0x20(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x20(%rbp), %rdx
movq -0x18(%rbp), %rcx
callq 0x223d0
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_callabs_x
static void _asm_inst_callabs_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *func
) {
	assert(ctx);
	assert(rstr);
	assert(func);

	const char *mnemonic = "calll";

	ResizableString rstr_param;
	rstr_init_with_cstr(&rstr_param, func);
	rstr_prepend_with_char(&rstr_param, '*');

	_asm_inst1(
		ctx,
		rstr,
		mnemonic,
		RSTR_CSTR(&rstr_param)
	);

	rstr_free(&rstr_param);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x2541d
jmp 0x2543c
leaq 0x5ad3d(%rip), %rdi     # 0x80161
leaq 0x504cd(%rip), %rsi     # 0x758f8
movl $0x6ef, %edx            # imm = 0x6EF
leaq 0x534da(%rip), %rcx     # 0x78911
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x25445
jmp 0x25464
leaq 0x4e6c1(%rip), %rdi     # 0x73b0d
leaq 0x504a5(%rip), %rsi     # 0x758f8
movl $0x6f0, %edx            # imm = 0x6F0
leaq 0x534b2(%rip), %rcx     # 0x78911
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x2546d
jmp 0x2548c
leaq 0x53492(%rip), %rdi     # 0x78906
leaq 0x5047d(%rip), %rsi     # 0x758f8
movl $0x6f1, %edx            # imm = 0x6F1
leaq 0x5348a(%rip), %rcx     # 0x78911
callq 0x30a0
leaq 0x53478(%rip), %rax     # 0x7890b
movq %rax, -0x20(%rbp)
movq -0x18(%rbp), %rsi
leaq -0x30(%rbp), %rdi
callq 0x8cf0
leaq -0x30(%rbp), %rdi
movl $0x2a, %esi
callq 0x9ad0
movq -0x8(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x38(%rbp)
cmpq $0x0, -0x28(%rbp)
jne 0x254de
leaq 0x50a67(%rip), %rax     # 0x75f3f
movq %rax, -0x50(%rbp)
jmp 0x254e6
movq -0x28(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x38(%rbp), %rdx
movq -0x40(%rbp), %rsi
movq -0x48(%rbp), %rdi
movq -0x50(%rbp), %rcx
callq 0x223d0
leaq -0x30(%rbp), %rdi
callq 0x9310
addq $0x50, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_imul_x_x_x
static void _asm_inst_imul_x_x_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	uint8_t type,
	const char *target,
	const char *source1,
	const char *source2
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source1);
	assert(source2);

	ResizableString rstr_mnemonic;
	rstr_init_with_cstr(&rstr_mnemonic, "imul");
	rstr_append_with_char(
		&rstr_mnemonic,
		_asm_inst_type_suffix(ctx, type)
	);

	_asm_inst3(
		ctx,
		rstr,
		RSTR_CSTR(&rstr_mnemonic),
		source2,
		source1,
		target
	);

	rstr_free(&rstr_mnemonic);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movb %dl, %al
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movb %al, -0x11(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq %r9, -0x30(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x2553a
jmp 0x25559
leaq 0x5ac20(%rip), %rdi     # 0x80161
leaq 0x503b0(%rip), %rsi     # 0x758f8
movl $0x985, %edx            # imm = 0x985
leaq 0x534d9(%rip), %rcx     # 0x78a2d
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x25562
jmp 0x25581
leaq 0x4e5a4(%rip), %rdi     # 0x73b0d
leaq 0x50388(%rip), %rsi     # 0x758f8
movl $0x986, %edx            # imm = 0x986
leaq 0x534b1(%rip), %rcx     # 0x78a2d
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x2558a
jmp 0x255a9
leaq 0x59da3(%rip), %rdi     # 0x7f334
leaq 0x50360(%rip), %rsi     # 0x758f8
movl $0x987, %edx            # imm = 0x987
leaq 0x53489(%rip), %rcx     # 0x78a2d
callq 0x30a0
cmpq $0x0, -0x28(%rbp)
je 0x255b2
jmp 0x255d1
leaq 0x534f0(%rip), %rdi     # 0x78aa9
leaq 0x50338(%rip), %rsi     # 0x758f8
movl $0x988, %edx            # imm = 0x988
leaq 0x53461(%rip), %rcx     # 0x78a2d
callq 0x30a0
cmpq $0x0, -0x30(%rbp)
je 0x255da
jmp 0x255f9
leaq 0x534d0(%rip), %rdi     # 0x78ab1
leaq 0x50310(%rip), %rsi     # 0x758f8
movl $0x989, %edx            # imm = 0x989
leaq 0x53439(%rip), %rcx     # 0x78a2d
callq 0x30a0
leaq -0x40(%rbp), %rdi
leaq 0x534b5(%rip), %rsi     # 0x78ab9
callq 0x8cf0
movq -0x8(%rbp), %rdi
movzbl -0x11(%rbp), %esi
callq 0x21070
leaq -0x40(%rbp), %rdi
movsbl %al, %esi
callq 0x8ea0
movq -0x8(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x48(%rbp)
cmpq $0x0, -0x38(%rbp)
jne 0x25646
leaq 0x508ff(%rip), %rax     # 0x75f3f
movq %rax, -0x58(%rbp)
jmp 0x2564e
movq -0x38(%rbp), %rax
movq %rax, -0x58(%rbp)
movq -0x48(%rbp), %rsi
movq -0x50(%rbp), %rdi
movq -0x58(%rbp), %rdx
movq -0x30(%rbp), %rcx
movq -0x28(%rbp), %r8
movq -0x20(%rbp), %r9
callq 0x257b0
leaq -0x40(%rbp), %rdi
callq 0x9310
addq $0x60, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: emu_add_64
static void _emu_add_64(
	ASMGeneratorGas32Context *ctx,
	const char *al, const char *ah,
	const char *bl, const char *bh
) {
	assert(ctx);
	assert(al);
	assert(ah);
	assert(bl);
	assert(bh);

	_asm_inst_add_x_x(
		ctx,
		ctx->body,
		BE_TYPE_UINT32,
		al,
		bl
	);

	_asm_inst_adc_x_x(
		ctx,
		ctx->body,
		BE_TYPE_UINT32,
		ah,
		bh
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x256a5
jmp 0x256c4
leaq 0x5aab5(%rip), %rdi     # 0x80161
leaq 0x50245(%rip), %rsi     # 0x758f8
movl $0x1844, %edx           # imm = 0x1844
leaq 0x5348a(%rip), %rcx     # 0x78b49
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x256cd
jmp 0x256ec
leaq 0x51081(%rip), %rdi     # 0x76755
leaq 0x5021d(%rip), %rsi     # 0x758f8
movl $0x1845, %edx           # imm = 0x1845
leaq 0x53462(%rip), %rcx     # 0x78b49
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x256f5
jmp 0x25714
leaq 0x51650(%rip), %rdi     # 0x76d4c
leaq 0x501f5(%rip), %rsi     # 0x758f8
movl $0x1846, %edx           # imm = 0x1846
leaq 0x5343a(%rip), %rcx     # 0x78b49
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x2571d
jmp 0x2573c
leaq 0x5141c(%rip), %rdi     # 0x76b40
leaq 0x501cd(%rip), %rsi     # 0x758f8
movl $0x1847, %edx           # imm = 0x1847
leaq 0x53412(%rip), %rcx     # 0x78b49
callq 0x30a0
cmpq $0x0, -0x28(%rbp)
je 0x25745
jmp 0x25764
leaq 0x53462(%rip), %rdi     # 0x78bae
leaq 0x501a5(%rip), %rsi     # 0x758f8
movl $0x1848, %edx           # imm = 0x1848
leaq 0x533ea(%rip), %rcx     # 0x78b49
callq 0x30a0
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rsi
movq -0x10(%rbp), %rcx
movq -0x20(%rbp), %r8
movl $0x8, %edx
callq 0x21eb0
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rsi
movq -0x18(%rbp), %rcx
movq -0x28(%rbp), %r8
movl $0x8, %edx
callq 0x258f0
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst3
static void _asm_inst3(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *mnemonic,
	const char *arg1,
	const char *arg2,
	const char *arg3
) {
	assert(ctx);
	assert(rstr);
	assert(mnemonic);
	assert(arg1);
	assert(arg2);
	assert(arg3);

	rstr_appendf(
		rstr,
		"%s %s, %s, %s\n",
		mnemonic,
		arg1,
		arg2,
		arg3
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq %r9, -0x30(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x257d9
jmp 0x257f8
leaq 0x5a981(%rip), %rdi     # 0x80161
leaq 0x50111(%rip), %rsi     # 0x758f8
movl $0x23e, %edx            # imm = 0x23E
leaq 0x532cb(%rip), %rcx     # 0x78abe
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x25801
jmp 0x25820
leaq 0x4e305(%rip), %rdi     # 0x73b0d
leaq 0x500e9(%rip), %rsi     # 0x758f8
movl $0x23f, %edx            # imm = 0x23F
leaq 0x532a3(%rip), %rcx     # 0x78abe
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x25829
jmp 0x25848
leaq 0x50e51(%rip), %rdi     # 0x76681
leaq 0x500c1(%rip), %rsi     # 0x758f8
movl $0x240, %edx            # imm = 0x240
leaq 0x5327b(%rip), %rcx     # 0x78abe
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x25851
jmp 0x25870
leaq 0x50e32(%rip), %rdi     # 0x7668a
leaq 0x50099(%rip), %rsi     # 0x758f8
movl $0x241, %edx            # imm = 0x241
leaq 0x53253(%rip), %rcx     # 0x78abe
callq 0x30a0
cmpq $0x0, -0x28(%rbp)
je 0x25879
jmp 0x25898
leaq 0x50e0f(%rip), %rdi     # 0x7668f
leaq 0x50071(%rip), %rsi     # 0x758f8
movl $0x242, %edx            # imm = 0x242
leaq 0x5322b(%rip), %rcx     # 0x78abe
callq 0x30a0
cmpq $0x0, -0x30(%rbp)
je 0x258a1
jmp 0x258c0
leaq 0x5328d(%rip), %rdi     # 0x78b35
leaq 0x50049(%rip), %rsi     # 0x758f8
movl $0x243, %edx            # imm = 0x243
leaq 0x53203(%rip), %rcx     # 0x78abe
callq 0x30a0
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rcx
movq -0x28(%rbp), %r8
movq -0x30(%rbp), %r9
leaq 0x5325f(%rip), %rsi     # 0x78b3a
movb $0x0, %al
callq 0x94d0
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_adc_x_x
static void _asm_inst_adc_x_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	uint8_t type,
	const char *target,
	const char *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	ResizableString rstr_mnemonic;
	rstr_init_with_cstr(&rstr_mnemonic, "adc");
	rstr_append_with_char(
		&rstr_mnemonic,
		_asm_inst_type_suffix(ctx, type)
	);

	_asm_inst2(
		ctx,
		rstr,
		RSTR_CSTR(&rstr_mnemonic),
		source,
		target
	);

	rstr_free(&rstr_mnemonic);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movb %dl, %al
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movb %al, -0x11(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x25916
jmp 0x25935
leaq 0x5a844(%rip), %rdi     # 0x80161
leaq 0x4ffd4(%rip), %rsi     # 0x758f8
movl $0x3dc, %edx            # imm = 0x3DC
leaq 0x53281(%rip), %rcx     # 0x78bb1
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x2593e
jmp 0x2595d
leaq 0x4e1c8(%rip), %rdi     # 0x73b0d
leaq 0x4ffac(%rip), %rsi     # 0x758f8
movl $0x3dd, %edx            # imm = 0x3DD
leaq 0x53259(%rip), %rcx     # 0x78bb1
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x25966
jmp 0x25985
leaq 0x599c7(%rip), %rdi     # 0x7f334
leaq 0x4ff84(%rip), %rsi     # 0x758f8
movl $0x3de, %edx            # imm = 0x3DE
leaq 0x53231(%rip), %rcx     # 0x78bb1
callq 0x30a0
cmpq $0x0, -0x28(%rbp)
je 0x2598e
jmp 0x259ad
leaq 0x5689f(%rip), %rdi     # 0x7c234
leaq 0x4ff5c(%rip), %rsi     # 0x758f8
movl $0x3df, %edx            # imm = 0x3DF
leaq 0x53209(%rip), %rcx     # 0x78bb1
callq 0x30a0
leaq -0x38(%rbp), %rdi
leaq 0x53264(%rip), %rsi     # 0x78c1c
callq 0x8cf0
movq -0x8(%rbp), %rdi
movzbl -0x11(%rbp), %esi
callq 0x21070
leaq -0x38(%rbp), %rdi
movsbl %al, %esi
callq 0x8ea0
movq -0x8(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x40(%rbp)
cmpq $0x0, -0x30(%rbp)
jne 0x259fa
leaq 0x5054b(%rip), %rax     # 0x75f3f
movq %rax, -0x50(%rbp)
jmp 0x25a02
movq -0x30(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x40(%rbp), %rsi
movq -0x48(%rbp), %rdi
movq -0x50(%rbp), %rdx
movq -0x28(%rbp), %rcx
movq -0x20(%rbp), %r8
callq 0x21140
leaq -0x38(%rbp), %rdi
callq 0x9310
addq $0x50, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_sub_x_x
static void _asm_inst_sub_x_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	uint8_t type,
	const char *target,
	const char *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	ResizableString rstr_mnemonic;
	rstr_init_with_cstr(&rstr_mnemonic, "sub");
	rstr_append_with_char(
		&rstr_mnemonic,
		_asm_inst_type_suffix(ctx, type)
	);

	_asm_inst2(
		ctx,
		rstr,
		RSTR_CSTR(&rstr_mnemonic),
		source,
		target
	);

	rstr_free(&rstr_mnemonic);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movb %dl, %al
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movb %al, -0x11(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x25a56
jmp 0x25a75
leaq 0x5a704(%rip), %rdi     # 0x80161
leaq 0x4fe94(%rip), %rsi     # 0x758f8
movl $0x922, %edx            # imm = 0x922
leaq 0x5320f(%rip), %rcx     # 0x78c7f
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x25a7e
jmp 0x25a9d
leaq 0x4e088(%rip), %rdi     # 0x73b0d
leaq 0x4fe6c(%rip), %rsi     # 0x758f8
movl $0x923, %edx            # imm = 0x923
leaq 0x531e7(%rip), %rcx     # 0x78c7f
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x25aa6
jmp 0x25ac5
leaq 0x59887(%rip), %rdi     # 0x7f334
leaq 0x4fe44(%rip), %rsi     # 0x758f8
movl $0x924, %edx            # imm = 0x924
leaq 0x531bf(%rip), %rcx     # 0x78c7f
callq 0x30a0
cmpq $0x0, -0x28(%rbp)
je 0x25ace
jmp 0x25aed
leaq 0x5675f(%rip), %rdi     # 0x7c234
leaq 0x4fe1c(%rip), %rsi     # 0x758f8
movl $0x925, %edx            # imm = 0x925
leaq 0x53197(%rip), %rcx     # 0x78c7f
callq 0x30a0
leaq -0x38(%rbp), %rdi
leaq 0x531f2(%rip), %rsi     # 0x78cea
callq 0x8cf0
movq -0x8(%rbp), %rdi
movzbl -0x11(%rbp), %esi
callq 0x21070
leaq -0x38(%rbp), %rdi
movsbl %al, %esi
callq 0x8ea0
movq -0x8(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x40(%rbp)
cmpq $0x0, -0x30(%rbp)
jne 0x25b3a
leaq 0x5040b(%rip), %rax     # 0x75f3f
movq %rax, -0x50(%rbp)
jmp 0x25b42
movq -0x30(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x40(%rbp), %rsi
movq -0x48(%rbp), %rdi
movq -0x50(%rbp), %rdx
movq -0x28(%rbp), %rcx
movq -0x20(%rbp), %r8
callq 0x21140
leaq -0x38(%rbp), %rdi
callq 0x9310
addq $0x50, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: emu_sub_64
static void _emu_sub_64(
	ASMGeneratorGas32Context *ctx,
	const char *al, const char *ah,
	const char *bl, const char *bh
) {
	assert(ctx);
	assert(al);
	assert(ah);
	assert(bl);
	assert(bh);

	_asm_inst_sub_x_x(
		ctx,
		ctx->body,
		BE_TYPE_UINT32,
		al,
		bl
	);

	_asm_inst_sbb_x_x(
		ctx,
		ctx->body,
		BE_TYPE_UINT32,
		ah,
		bh
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x25b95
jmp 0x25bb4
leaq 0x5a5c5(%rip), %rdi     # 0x80161
leaq 0x4fd55(%rip), %rsi     # 0x758f8
movl $0x192a, %edx           # imm = 0x192A
leaq 0x5313f(%rip), %rcx     # 0x78cee
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x25bbd
jmp 0x25bdc
leaq 0x50b91(%rip), %rdi     # 0x76755
leaq 0x4fd2d(%rip), %rsi     # 0x758f8
movl $0x192b, %edx           # imm = 0x192B
leaq 0x53117(%rip), %rcx     # 0x78cee
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x25be5
jmp 0x25c04
leaq 0x51160(%rip), %rdi     # 0x76d4c
leaq 0x4fd05(%rip), %rsi     # 0x758f8
movl $0x192c, %edx           # imm = 0x192C
leaq 0x530ef(%rip), %rcx     # 0x78cee
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x25c0d
jmp 0x25c2c
leaq 0x50f2c(%rip), %rdi     # 0x76b40
leaq 0x4fcdd(%rip), %rsi     # 0x758f8
movl $0x192d, %edx           # imm = 0x192D
leaq 0x530c7(%rip), %rcx     # 0x78cee
callq 0x30a0
cmpq $0x0, -0x28(%rbp)
je 0x25c35
jmp 0x25c54
leaq 0x52f72(%rip), %rdi     # 0x78bae
leaq 0x4fcb5(%rip), %rsi     # 0x758f8
movl $0x192e, %edx           # imm = 0x192E
leaq 0x5309f(%rip), %rcx     # 0x78cee
callq 0x30a0
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rsi
movq -0x10(%rbp), %rcx
movq -0x20(%rbp), %r8
movl $0x8, %edx
callq 0x25a30
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rsi
movq -0x18(%rbp), %rcx
movq -0x28(%rbp), %r8
movl $0x8, %edx
callq 0x25e80
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_subss_x_x
static void _asm_inst_subss_x_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target,
	const char *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	const char *mnemonic = "subss";

	_asm_inst2(
		ctx,
		rstr,
		mnemonic,
		source,
		target
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x25cc1
jmp 0x25ce0
leaq 0x5a499(%rip), %rdi     # 0x80161
leaq 0x4fc29(%rip), %rsi     # 0x758f8
movl $0x9a8, %edx            # imm = 0x9A8
leaq 0x530e7(%rip), %rcx     # 0x78dc2
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x25ce9
jmp 0x25d08
leaq 0x4de1d(%rip), %rdi     # 0x73b0d
leaq 0x4fc01(%rip), %rsi     # 0x758f8
movl $0x9a9, %edx            # imm = 0x9A9
leaq 0x530bf(%rip), %rcx     # 0x78dc2
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x25d11
jmp 0x25d30
leaq 0x5961c(%rip), %rdi     # 0x7f334
leaq 0x4fbd9(%rip), %rsi     # 0x758f8
movl $0x9aa, %edx            # imm = 0x9AA
leaq 0x53097(%rip), %rcx     # 0x78dc2
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x25d39
jmp 0x25d58
leaq 0x564f4(%rip), %rdi     # 0x7c234
leaq 0x4fbb1(%rip), %rsi     # 0x758f8
movl $0x9ab, %edx            # imm = 0x9AB
leaq 0x5306f(%rip), %rcx     # 0x78dc2
callq 0x30a0
leaq 0x530c7(%rip), %rax     # 0x78e26
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x28(%rbp), %rdx
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %r8
callq 0x21140
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_subsd_x_x
static void _asm_inst_subsd_x_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target,
	const char *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	const char *mnemonic = "subsd";

	_asm_inst2(
		ctx,
		rstr,
		mnemonic,
		source,
		target
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x25db1
jmp 0x25dd0
leaq 0x5a3a9(%rip), %rdi     # 0x80161
leaq 0x4fb39(%rip), %rsi     # 0x758f8
movl $0x9c2, %edx            # imm = 0x9C2
leaq 0x53061(%rip), %rcx     # 0x78e2c
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x25dd9
jmp 0x25df8
leaq 0x4dd2d(%rip), %rdi     # 0x73b0d
leaq 0x4fb11(%rip), %rsi     # 0x758f8
movl $0x9c3, %edx            # imm = 0x9C3
leaq 0x53039(%rip), %rcx     # 0x78e2c
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x25e01
jmp 0x25e20
leaq 0x5952c(%rip), %rdi     # 0x7f334
leaq 0x4fae9(%rip), %rsi     # 0x758f8
movl $0x9c4, %edx            # imm = 0x9C4
leaq 0x53011(%rip), %rcx     # 0x78e2c
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x25e29
jmp 0x25e48
leaq 0x56404(%rip), %rdi     # 0x7c234
leaq 0x4fac1(%rip), %rsi     # 0x758f8
movl $0x9c5, %edx            # imm = 0x9C5
leaq 0x52fe9(%rip), %rcx     # 0x78e2c
callq 0x30a0
leaq 0x53041(%rip), %rax     # 0x78e90
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x28(%rbp), %rdx
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %r8
callq 0x21140
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: push_func_call_arg32
static size_t _push_func_call_arg32(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *value
) {
	_asm_inst_push_x(
		ctx,
		rstr,
		BE_TYPE_UINT32,
		_ASM_CONST_0
	);

	_asm_inst_push_x(
		ctx,
		rstr,
		BE_TYPE_UINT32,
		value
	);

	return 8;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movl $0x8, %edx
leaq 0x50a83(%rip), %rcx     # 0x76a6b
callq 0x221b0
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x18(%rbp), %rcx
movl $0x8, %edx
callq 0x221b0
movl $0x8, %eax
addq $0x20, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: release_func_call_arg_space
static void _release_func_call_arg_space(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	size_t size
) {
	ResizableString sz_const;
	rstr_init(&sz_const);
	_asm_inst_uint_const(ctx, &sz_const, size);

	_asm_inst_add_x_x(
		ctx,
		ctx->body,
		BE_TYPE_UINT32,
		_ASM_REG_NAME_ESP,
		RSTR_CSTR(&sz_const)
	);

	rstr_free(&sz_const);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
leaq -0x28(%rbp), %rdi
callq 0x8c90
movq -0x8(%rbp), %rdi
movq -0x18(%rbp), %rdx
leaq -0x28(%rbp), %rsi
callq 0x21e80
movq -0x8(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x30(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x26066
leaq 0x4fedf(%rip), %rax     # 0x75f3f
movq %rax, -0x40(%rbp)
jmp 0x2606e
movq -0x20(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x30(%rbp), %rsi
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %r8
movl $0x8, %edx
leaq 0x5187b(%rip), %rcx     # 0x77901
callq 0x21eb0
leaq -0x28(%rbp), %rdi
callq 0x9310
addq $0x40, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_mulss_x_x
static void _asm_inst_mulss_x_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target,
	const char *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	const char *mnemonic = "mulss";

	_asm_inst2(
		ctx,
		rstr,
		mnemonic,
		source,
		target
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x26201
jmp 0x26220
leaq 0x59f59(%rip), %rdi     # 0x80161
leaq 0x4f6e9(%rip), %rsi     # 0x758f8
movl $0x9dc, %edx            # imm = 0x9DC
leaq 0x52d62(%rip), %rcx     # 0x78f7d
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x26229
jmp 0x26248
leaq 0x4d8dd(%rip), %rdi     # 0x73b0d
leaq 0x4f6c1(%rip), %rsi     # 0x758f8
movl $0x9dd, %edx            # imm = 0x9DD
leaq 0x52d3a(%rip), %rcx     # 0x78f7d
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x26251
jmp 0x26270
leaq 0x590dc(%rip), %rdi     # 0x7f334
leaq 0x4f699(%rip), %rsi     # 0x758f8
movl $0x9de, %edx            # imm = 0x9DE
leaq 0x52d12(%rip), %rcx     # 0x78f7d
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x26279
jmp 0x26298
leaq 0x55fb4(%rip), %rdi     # 0x7c234
leaq 0x4f671(%rip), %rsi     # 0x758f8
movl $0x9df, %edx            # imm = 0x9DF
leaq 0x52cea(%rip), %rcx     # 0x78f7d
callq 0x30a0
leaq 0x52d42(%rip), %rax     # 0x78fe1
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x28(%rbp), %rdx
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %r8
callq 0x21140
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_mulsd_x_x
static void _asm_inst_mulsd_x_x(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr,
	const char *target,
	const char *source
) {
	assert(ctx);
	assert(rstr);
	assert(target);
	assert(source);

	const char *mnemonic = "mulsd";

	_asm_inst2(
		ctx,
		rstr,
		mnemonic,
		source,
		target
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x262f1
jmp 0x26310
leaq 0x59e69(%rip), %rdi     # 0x80161
leaq 0x4f5f9(%rip), %rsi     # 0x758f8
movl $0x9f6, %edx            # imm = 0x9F6
leaq 0x52cdc(%rip), %rcx     # 0x78fe7
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x26319
jmp 0x26338
leaq 0x4d7ed(%rip), %rdi     # 0x73b0d
leaq 0x4f5d1(%rip), %rsi     # 0x758f8
movl $0x9f7, %edx            # imm = 0x9F7
leaq 0x52cb4(%rip), %rcx     # 0x78fe7
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x26341
jmp 0x26360
leaq 0x58fec(%rip), %rdi     # 0x7f334
leaq 0x4f5a9(%rip), %rsi     # 0x758f8
movl $0x9f8, %edx            # imm = 0x9F8
leaq 0x52c8c(%rip), %rcx     # 0x78fe7
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x26369
jmp 0x26388
leaq 0x55ec4(%rip), %rdi     # 0x7c234
leaq 0x4f581(%rip), %rsi     # 0x758f8
movl $0x9f9, %edx            # imm = 0x9F9
leaq 0x52c64(%rip), %rcx     # 0x78fe7
callq 0x30a0
leaq 0x52cbc(%rip), %rax     # 0x7904b
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x28(%rbp), %rdx
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %r8
callq 0x21140
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/backend/asmgen_gas32.c
// Function: asm_inst_cdq
static void _asm_inst_cdq(
	ASMGeneratorGas32Context *ctx,
	ResizableString *rstr
) {
	assert(ctx);
	assert(rstr);

	const char *mnemonic = "cltd";

	_asm_inst(
		ctx,
		rstr,
		mnemonic
	);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x264e9
jmp 0x26508
leaq 0x59c71(%rip), %rdi     # 0x80161
leaq 0x4f401(%rip), %rsi     # 0x758f8
movl $0xa0e, %edx            # imm = 0xA0E
leaq 0x52c24(%rip), %rcx     # 0x79127
callq 0x30a0
cmpq $0x0, -0x10(%rbp)
je 0x26511
jmp 0x26530
leaq 0x4d5f5(%rip), %rdi     # 0x73b0d
leaq 0x4f3d9(%rip), %rsi     # 0x758f8
movl $0xa0f, %edx            # imm = 0xA0F
leaq 0x52bfc(%rip), %rcx     # 0x79127
callq 0x30a0
leaq 0x52c32(%rip), %rax     # 0x79169
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x18(%rbp), %rdx
callq 0x26850
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)