// File: yukioc[P]tscrpt/t-tscrpt.cpp
// Function: t_div()
void t_div(){ /*{{{*/
	bool except;
	tscrpt_t sc;
	obj_t*o;

	//! \test 12 / 4 => 3
	o = sc.eval("12 / 4");
	mu_assert(o!=NULL);
	mu_assert(o->type=='N');
	mu_assert(o->value()==3);
	delete o;

	//! \test 13 / 5 => 2
	o = sc.eval("13 / 5");
	mu_assert(o!=NULL);
	mu_assert(o->type=='N');
	mu_assert(o->value()==2);
	delete o;
	o=0;

	//! \test 14 / 0 => runtime_error
	except=false;
	try {
		o=sc.eval("14 / 0");
	}catch(std::exception& e){
		except=true;
		mu_assert(typeid(e)==typeid(std::runtime_error));
		sc.clear();
	}
	mu_assert(except==true);

	//! \test "ddd" / 6 => 0
	o = sc.eval("\"ddd\" / 6");
	mu_assert(o!=NULL);
	mu_assert(o->type=='N');
	mu_assert(o->value()==0);
	delete o;

	//! \test 11 / "ddd" => runtime_error
	except=false;
	try {
		o = sc.eval("11 / \"ddd\"");
	}catch(std::exception& e){
		except=true;
		mu_assert(typeid(e)==typeid(std::runtime_error));
	}
	mu_assert(except==true);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
leaq -0x10(%rbp), %rdi
movq %rdi, -0x48(%rbp)
callq 0x25b0
movq -0x48(%rbp), %rdi
leaq 0x3588(%rip), %rsi      # 0xa8bb
callq 0x2670
movq %rax, -0x40(%rbp)
jmp 0x733e
movq -0x40(%rbp), %rax
movq %rax, -0x18(%rbp)
movl 0x6eb0(%rip), %eax      # 0xe1fc
addl $0x1, %eax
movl %eax, 0x6ea7(%rip)      # 0xe1fc
cmpq $0x0, -0x18(%rbp)
jne 0x73a0
movl 0x6e92(%rip), %eax      # 0xe1f4
incl %eax
movl %eax, 0x6e8a(%rip)      # 0xe1f4
leaq 0x316b(%rip), %rdi      # 0xa4dc
leaq 0x3182(%rip), %rsi      # 0xa4fa
leaq 0x3395(%rip), %rcx      # 0xa714
xorl %eax, %eax
movl $0xf0, %edx
callq 0x2040
jmp 0x738d
jmp 0x73a0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x7989
jmp 0x73a2
jmp 0x73a4
jmp 0x73a6
movl 0x6e50(%rip), %eax      # 0xe1fc
addl $0x1, %eax
movl %eax, 0x6e47(%rip)      # 0xe1fc
movq -0x18(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x4e, %eax
je 0x73f4
movl 0x6e2d(%rip), %eax      # 0xe1f4
incl %eax
movl %eax, 0x6e25(%rip)      # 0xe1f4
leaq 0x3106(%rip), %rdi      # 0xa4dc
leaq 0x311d(%rip), %rsi      # 0xa4fa
leaq 0x3338(%rip), %rcx      # 0xa71c
xorl %eax, %eax
movl $0xf1, %edx
callq 0x2040
jmp 0x73f2
jmp 0x73f4
jmp 0x73f6
jmp 0x73f8
jmp 0x73fa
movl 0x6dfc(%rip), %eax      # 0xe1fc
incl %eax
movl %eax, 0x6df4(%rip)      # 0xe1fc
movq -0x18(%rbp), %rdi
callq 0x2480
movl %eax, -0x4c(%rbp)
jmp 0x7416
movl -0x4c(%rbp), %eax
cmpl $0x3, %eax
je 0x7451
movl 0x6dd0(%rip), %eax      # 0xe1f4
incl %eax
movl %eax, 0x6dc8(%rip)      # 0xe1f4
leaq 0x30a9(%rip), %rdi      # 0xa4dc
leaq 0x30c0(%rip), %rsi      # 0xa4fa
leaq 0x3481(%rip), %rcx      # 0xa8c2
xorl %eax, %eax
movl $0xf2, %edx
callq 0x2040
jmp 0x744f
jmp 0x7451
jmp 0x7453
jmp 0x7455
movq -0x18(%rbp), %rax
movq %rax, -0x58(%rbp)
cmpq $0x0, %rax
je 0x747a
movq -0x58(%rbp), %rdi
callq 0x4480
movq -0x58(%rbp), %rdi
movl $0x30, %esi
callq 0x21d0
leaq 0x344f(%rip), %rsi      # 0xa8d0
leaq -0x10(%rbp), %rdi
callq 0x2670
movq %rax, -0x60(%rbp)
jmp 0x7490
movq -0x60(%rbp), %rax
movq %rax, -0x18(%rbp)
movl 0x6d5e(%rip), %eax      # 0xe1fc
addl $0x1, %eax
movl %eax, 0x6d55(%rip)      # 0xe1fc
cmpq $0x0, -0x18(%rbp)
jne 0x74e1
movl 0x6d40(%rip), %eax      # 0xe1f4
incl %eax
movl %eax, 0x6d38(%rip)      # 0xe1f4
leaq 0x3019(%rip), %rdi      # 0xa4dc
leaq 0x3030(%rip), %rsi      # 0xa4fa
leaq 0x3243(%rip), %rcx      # 0xa714
xorl %eax, %eax
movl $0xf7, %edx
callq 0x2040
jmp 0x74df
jmp 0x74e1
jmp 0x74e3
jmp 0x74e5
jmp 0x74e7
movl 0x6d0f(%rip), %eax      # 0xe1fc
addl $0x1, %eax
movl %eax, 0x6d06(%rip)      # 0xe1fc
movq -0x18(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x4e, %eax
je 0x7535
movl 0x6cec(%rip), %eax      # 0xe1f4
incl %eax
movl %eax, 0x6ce4(%rip)      # 0xe1f4
leaq 0x2fc5(%rip), %rdi      # 0xa4dc
leaq 0x2fdc(%rip), %rsi      # 0xa4fa
leaq 0x31f7(%rip), %rcx      # 0xa71c
xorl %eax, %eax
movl $0xf8, %edx
callq 0x2040
jmp 0x7533
jmp 0x7535
jmp 0x7537
jmp 0x7539
jmp 0x753b
movl 0x6cbb(%rip), %eax      # 0xe1fc
incl %eax
movl %eax, 0x6cb3(%rip)      # 0xe1fc
movq -0x18(%rbp), %rdi
callq 0x2480
movl %eax, -0x64(%rbp)
jmp 0x7557
movl -0x64(%rbp), %eax
cmpl $0x2, %eax
je 0x7592
movl 0x6c8f(%rip), %eax      # 0xe1f4
incl %eax
movl %eax, 0x6c87(%rip)      # 0xe1f4
leaq 0x2f68(%rip), %rdi      # 0xa4dc
leaq 0x2f7f(%rip), %rsi      # 0xa4fa
leaq 0x3271(%rip), %rcx      # 0xa7f3
xorl %eax, %eax
movl $0xf9, %edx
callq 0x2040
jmp 0x7590
jmp 0x7592
jmp 0x7594
jmp 0x7596
movq -0x18(%rbp), %rax
movq %rax, -0x70(%rbp)
cmpq $0x0, %rax
je 0x75bb
movq -0x70(%rbp), %rdi
callq 0x4480
movq -0x70(%rbp), %rdi
movl $0x30, %esi
callq 0x21d0
movq $0x0, -0x18(%rbp)
movb $0x0, -0x1(%rbp)
leaq 0x3309(%rip), %rsi      # 0xa8d7
leaq -0x10(%rbp), %rdi
callq 0x2670
movq %rax, -0x78(%rbp)
jmp 0x75dd
movq -0x78(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x769f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
movl -0x24(%rbp), %eax
movl $0x1, %ecx
cmpl %ecx, %eax
jne 0x7989
movq -0x20(%rbp), %rdi
callq 0x20d0
movq %rax, -0x30(%rbp)
movb $0x1, -0x1(%rbp)
movl 0x6bdf(%rip), %eax      # 0xe1fc
addl $0x1, %eax
movl %eax, 0x6bd6(%rip)      # 0xe1fc
movq -0x30(%rbp), %rax
movq (%rax), %rax
movq -0x8(%rax), %rdi
movq 0x69c0(%rip), %rsi      # 0xdff8
callq 0x9950
testb $0x1, %al
jne 0x7687
movl 0x6bad(%rip), %eax      # 0xe1f4
incl %eax
movl %eax, 0x6ba5(%rip)      # 0xe1f4
leaq 0x2e86(%rip), %rdi      # 0xa4dc
leaq 0x2e9d(%rip), %rsi      # 0xa4fa
leaq 0x327a(%rip), %rcx      # 0xa8de
xorl %eax, %eax
movl $0x103, %edx            # imm = 0x103
callq 0x2040
jmp 0x7672
jmp 0x7687
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
callq 0x22f0
jmp 0x76f0
jmp 0x7689
jmp 0x768b
leaq -0x10(%rbp), %rdi
callq 0x2600
jmp 0x7696
callq 0x22f0
jmp 0x769d
jmp 0x769f
jmp 0x76a1
movl 0x6b55(%rip), %eax      # 0xe1fc
addl $0x1, %eax
movl %eax, 0x6b4c(%rip)      # 0xe1fc
movb -0x1(%rbp), %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x1, %eax
je 0x76f5
movl 0x6b31(%rip), %eax      # 0xe1f4
incl %eax
movl %eax, 0x6b29(%rip)      # 0xe1f4
leaq 0x2e0a(%rip), %rdi      # 0xa4dc
leaq 0x2e21(%rip), %rsi      # 0xa4fa
leaq 0x3012(%rip), %rcx      # 0xa6f2
xorl %eax, %eax
movl $0x106, %edx            # imm = 0x106
callq 0x2040
jmp 0x76ee
jmp 0x76f5
jmp 0x7989
jmp 0x76f7
jmp 0x76f9
leaq 0x3204(%rip), %rsi      # 0xa904
leaq -0x10(%rbp), %rdi
callq 0x2670
movq %rax, -0x80(%rbp)
jmp 0x770f
movq -0x80(%rbp), %rax
movq %rax, -0x18(%rbp)
movl 0x6adf(%rip), %eax      # 0xe1fc
addl $0x1, %eax
movl %eax, 0x6ad6(%rip)      # 0xe1fc
cmpq $0x0, -0x18(%rbp)
jne 0x7760
movl 0x6ac1(%rip), %eax      # 0xe1f4
incl %eax
movl %eax, 0x6ab9(%rip)      # 0xe1f4
leaq 0x2d9a(%rip), %rdi      # 0xa4dc
leaq 0x2db1(%rip), %rsi      # 0xa4fa
leaq 0x2fc4(%rip), %rcx      # 0xa714
xorl %eax, %eax
movl $0x10a, %edx            # imm = 0x10A
callq 0x2040
jmp 0x775e
jmp 0x7760
jmp 0x7762
jmp 0x7764
jmp 0x7766
movl 0x6a90(%rip), %eax      # 0xe1fc
addl $0x1, %eax
movl %eax, 0x6a87(%rip)      # 0xe1fc
movq -0x18(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x4e, %eax
je 0x77b4
movl 0x6a6d(%rip), %eax      # 0xe1f4
incl %eax
movl %eax, 0x6a65(%rip)      # 0xe1f4
leaq 0x2d46(%rip), %rdi      # 0xa4dc
leaq 0x2d5d(%rip), %rsi      # 0xa4fa
leaq 0x2f78(%rip), %rcx      # 0xa71c
xorl %eax, %eax
movl $0x10b, %edx            # imm = 0x10B
callq 0x2040
jmp 0x77b2
jmp 0x77b4
jmp 0x77b6
jmp 0x77b8
jmp 0x77ba
movl 0x6a3c(%rip), %eax      # 0xe1fc
incl %eax
movl %eax, 0x6a34(%rip)      # 0xe1fc
movq -0x18(%rbp), %rdi
callq 0x2480
movl %eax, -0x84(%rbp)
jmp 0x77d9
movl -0x84(%rbp), %eax
cmpl $0x0, %eax
je 0x7817
movl 0x6a0a(%rip), %eax      # 0xe1f4
incl %eax
movl %eax, 0x6a02(%rip)      # 0xe1f4
leaq 0x2ce3(%rip), %rdi      # 0xa4dc
leaq 0x2cfa(%rip), %rsi      # 0xa4fa
leaq 0x306d(%rip), %rcx      # 0xa874
xorl %eax, %eax
movl $0x10c, %edx            # imm = 0x10C
callq 0x2040
jmp 0x7815
jmp 0x7817
jmp 0x7819
jmp 0x781b
movq -0x18(%rbp), %rax
movq %rax, -0x90(%rbp)
cmpq $0x0, %rax
je 0x7849
movq -0x90(%rbp), %rdi
callq 0x4480
movq -0x90(%rbp), %rdi
movl $0x30, %esi
callq 0x21d0
movb $0x0, -0x1(%rbp)
leaq 0x30ba(%rip), %rsi      # 0xa90e
leaq -0x10(%rbp), %rdi
callq 0x2670
movq %rax, -0x98(%rbp)
jmp 0x7866
movq -0x98(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x7920
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
movl -0x24(%rbp), %eax
movl $0x1, %ecx
cmpl %ecx, %eax
jne 0x7989
movq -0x20(%rbp), %rdi
callq 0x20d0
movq %rax, -0x38(%rbp)
movb $0x1, -0x1(%rbp)
movl 0x6953(%rip), %eax      # 0xe1fc
addl $0x1, %eax
movl %eax, 0x694a(%rip)      # 0xe1fc
movq -0x38(%rbp), %rax
movq (%rax), %rax
movq -0x8(%rax), %rdi
movq 0x6734(%rip), %rsi      # 0xdff8
callq 0x9950
testb $0x1, %al
jne 0x7913
movl 0x6921(%rip), %eax      # 0xe1f4
incl %eax
movl %eax, 0x6919(%rip)      # 0xe1f4
leaq 0x2bfa(%rip), %rdi      # 0xa4dc
leaq 0x2c11(%rip), %rsi      # 0xa4fa
leaq 0x2fee(%rip), %rcx      # 0xa8de
xorl %eax, %eax
movl $0x115, %edx            # imm = 0x115
callq 0x2040
jmp 0x78fe
jmp 0x7913
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
callq 0x22f0
jmp 0x7971
jmp 0x7915
jmp 0x7917
callq 0x22f0
jmp 0x791e
jmp 0x7920
jmp 0x7922
movl 0x68d4(%rip), %eax      # 0xe1fc
addl $0x1, %eax
movl %eax, 0x68cb(%rip)      # 0xe1fc
movb -0x1(%rbp), %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x1, %eax
je 0x7973
movl 0x68b0(%rip), %eax      # 0xe1f4
incl %eax
movl %eax, 0x68a8(%rip)      # 0xe1f4
leaq 0x2b89(%rip), %rdi      # 0xa4dc
leaq 0x2ba0(%rip), %rsi      # 0xa4fa
leaq 0x2d91(%rip), %rcx      # 0xa6f2
xorl %eax, %eax
movl $0x117, %edx            # imm = 0x117
callq 0x2040
jmp 0x796f
jmp 0x7973
jmp 0x7989
jmp 0x7975
jmp 0x7977
leaq -0x10(%rbp), %rdi
callq 0x25d0
addq $0xa0, %rsp
popq %rbp
retq
leaq -0x10(%rbp), %rdi
callq 0x25d0
movq -0x20(%rbp), %rdi
callq 0x2330
movq %rax, %rdi
callq 0x4240
nopw %cs:(%rax,%rax)