// File: aisthesis[P]realnumber/tst/array_arithmetic_test.cpp
// Function: conversion::one_billion_invoker()
BOOST_AUTO_TEST_CASE(one_billion) {
		const unsigned int ONE_BILLION = 1000000000;
		array_arithmetic::convert::from_int(ONE_BILLION, small_array, small);
		array_arithmetic::convert::from_int(ONE_BILLION, large_array, large);
		BOOST_CHECK_EQUAL(array_arithmetic::convert::to_int(small_array, small), ONE_BILLION);
		BOOST_CHECK_EQUAL(array_arithmetic::convert::to_int(large_array, large), ONE_BILLION);
	}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x9e0, %rsp            # imm = 0x9E0
movq 0x1fb8e(%rip), %rax     # 0x25220
movq %rax, -0x900(%rbp)
leaq 0x1796f(%rip), %rsi     # 0x1d00f
leaq -0x10(%rbp), %rdi
movl $0x1d, %edx
callq 0x17390
leaq -0x1b8(%rbp), %rdi
movq %rdi, -0x8f8(%rbp)
xorl %esi, %esi
movl $0x198, %edx            # imm = 0x198
callq 0x30d0
movq -0x8f8(%rbp), %rdi
callq 0x18120
movq -0x8f8(%rbp), %rdi
callq 0x18150
movq %rax, %rdi
movb $0x22, -0x1b9(%rbp)
leaq -0x1b9(%rbp), %rsi
callq 0x180e0
movq %rax, -0x8f0(%rbp)
jmp 0x56ff
movq -0x8f0(%rbp), %rdi
leaq 0x17994(%rip), %rsi     # 0x1d0a1
callq 0x184d0
movq %rax, -0x908(%rbp)
jmp 0x571b
movq -0x908(%rbp), %rdi
leaq 0x18260(%rip), %rsi     # 0x1d989
callq 0x18080
movq %rax, -0x910(%rbp)
jmp 0x5737
movq -0x910(%rbp), %rdi
callq 0x18160
movq %rax, -0x918(%rbp)
jmp 0x574c
movq -0x918(%rbp), %rsi
leaq -0x20(%rbp), %rdi
callq 0x18020
jmp 0x575e
movq -0x900(%rbp), %rdi
leaq -0x10(%rbp), %rsi
movl $0x30, %edx
leaq -0x20(%rbp), %rcx
callq 0x3390
jmp 0x5779
leaq -0x1b8(%rbp), %rdi
callq 0x181b0
leaq -0x1e8(%rbp), %rdi
callq 0x18500
movq 0x1fa88(%rip), %rax     # 0x25220
movq %rax, -0x920(%rbp)
leaq 0x17869(%rip), %rsi     # 0x1d00f
leaq -0x1f8(%rbp), %rdi
movl $0x1d, %edx
callq 0x17390
jmp 0x57b9
leaq -0x3a0(%rbp), %rdi
movq %rdi, -0x928(%rbp)
xorl %esi, %esi
movl $0x198, %edx            # imm = 0x198
callq 0x30d0
movq -0x928(%rbp), %rdi
callq 0x18120
jmp 0x57e1
leaq -0x3a0(%rbp), %rdi
callq 0x18150
movq %rax, %rdi
movb $0x22, -0x3a1(%rbp)
leaq -0x3a1(%rbp), %rsi
callq 0x180e0
movq %rax, -0x930(%rbp)
jmp 0x580c
movq -0x930(%rbp), %rdi
leaq 0x17887(%rip), %rsi     # 0x1d0a1
callq 0x184d0
movq %rax, -0x938(%rbp)
jmp 0x5828
movq -0x938(%rbp), %rdi
leaq 0x18162(%rip), %rsi     # 0x1d998
callq 0x18200
movq %rax, -0x940(%rbp)
jmp 0x5844
movq -0x940(%rbp), %rdi
callq 0x18160
movq %rax, -0x948(%rbp)
jmp 0x5859
movq -0x948(%rbp), %rsi
leaq -0x208(%rbp), %rdi
callq 0x18020
jmp 0x586e
movq -0x920(%rbp), %rdi
leaq -0x1f8(%rbp), %rsi
movl $0x30, %edx
leaq -0x208(%rbp), %rcx
callq 0x3390
jmp 0x588f
leaq -0x3a0(%rbp), %rdi
callq 0x181b0
leaq -0x1e8(%rbp), %rdi
callq 0x18520
jmp 0x58a9
movq 0x1f970(%rip), %rax     # 0x25220
movq %rax, -0x950(%rbp)
leaq 0x17751(%rip), %rsi     # 0x1d00f
leaq -0x3b8(%rbp), %rdi
movl $0x1d, %edx
callq 0x17390
jmp 0x58d1
leaq -0x560(%rbp), %rdi
movq %rdi, -0x958(%rbp)
xorl %esi, %esi
movl $0x198, %edx            # imm = 0x198
callq 0x30d0
movq -0x958(%rbp), %rdi
callq 0x18120
jmp 0x58f9
leaq -0x560(%rbp), %rdi
callq 0x18150
movq %rax, %rdi
movb $0x22, -0x561(%rbp)
leaq -0x561(%rbp), %rsi
callq 0x180e0
movq %rax, -0x960(%rbp)
jmp 0x5924
movq -0x960(%rbp), %rdi
leaq 0x1776f(%rip), %rsi     # 0x1d0a1
callq 0x184d0
movq %rax, -0x968(%rbp)
jmp 0x5940
movq -0x968(%rbp), %rdi
leaq 0x1805a(%rip), %rsi     # 0x1d9a8
callq 0x18250
movq %rax, -0x970(%rbp)
jmp 0x595c
movq -0x970(%rbp), %rdi
callq 0x18160
movq %rax, -0x978(%rbp)
jmp 0x5971
movq -0x978(%rbp), %rsi
leaq -0x3c8(%rbp), %rdi
callq 0x18020
jmp 0x5986
movq -0x950(%rbp), %rdi
leaq -0x3b8(%rbp), %rsi
movl $0x30, %edx
leaq -0x3c8(%rbp), %rcx
callq 0x3390
jmp 0x59a7
leaq -0x560(%rbp), %rdi
callq 0x181b0
leaq -0x1e8(%rbp), %rdi
callq 0x5cd0
jmp 0x59c1
movq 0x1f858(%rip), %rax     # 0x25220
movq %rax, -0x980(%rbp)
leaq 0x17639(%rip), %rsi     # 0x1d00f
leaq -0x578(%rbp), %rdi
movl $0x1d, %edx
callq 0x17390
jmp 0x59e9
leaq -0x720(%rbp), %rdi
movq %rdi, -0x988(%rbp)
xorl %esi, %esi
movl $0x198, %edx            # imm = 0x198
callq 0x30d0
movq -0x988(%rbp), %rdi
callq 0x18120
jmp 0x5a11
leaq -0x720(%rbp), %rdi
callq 0x18150
movq %rax, %rdi
movb $0x22, -0x721(%rbp)
leaq -0x721(%rbp), %rsi
callq 0x180e0
movq %rax, -0x990(%rbp)
jmp 0x5a3c
movq -0x990(%rbp), %rdi
leaq 0x17657(%rip), %rsi     # 0x1d0a1
callq 0x184d0
movq %rax, -0x998(%rbp)
jmp 0x5a58
movq -0x998(%rbp), %rdi
leaq 0x17f4f(%rip), %rsi     # 0x1d9b5
callq 0x18280
movq %rax, -0x9a0(%rbp)
jmp 0x5a74
movq -0x9a0(%rbp), %rdi
callq 0x18160
movq %rax, -0x9a8(%rbp)
jmp 0x5a89
movq -0x9a8(%rbp), %rsi
leaq -0x588(%rbp), %rdi
callq 0x18020
jmp 0x5a9e
movq -0x980(%rbp), %rdi
leaq -0x578(%rbp), %rsi
movl $0x30, %edx
leaq -0x588(%rbp), %rcx
callq 0x3390
jmp 0x5abf
leaq -0x720(%rbp), %rdi
callq 0x181b0
leaq -0x1e8(%rbp), %rdi
callq 0x18540
jmp 0x5ad9
movq 0x1f740(%rip), %rax     # 0x25220
movq %rax, -0x9b0(%rbp)
leaq 0x17521(%rip), %rsi     # 0x1d00f
leaq -0x738(%rbp), %rdi
movl $0x1d, %edx
callq 0x17390
jmp 0x5b01
leaq -0x8e0(%rbp), %rdi
movq %rdi, -0x9b8(%rbp)
xorl %esi, %esi
movl $0x198, %edx            # imm = 0x198
callq 0x30d0
movq -0x9b8(%rbp), %rdi
callq 0x18120
jmp 0x5b29
leaq -0x8e0(%rbp), %rdi
callq 0x18150
movq %rax, %rdi
movb $0x22, -0x8e1(%rbp)
leaq -0x8e1(%rbp), %rsi
callq 0x180e0
movq %rax, -0x9c0(%rbp)
jmp 0x5b54
movq -0x9c0(%rbp), %rdi
leaq 0x1753f(%rip), %rsi     # 0x1d0a1
callq 0x184d0
movq %rax, -0x9c8(%rbp)
jmp 0x5b70
movq -0x9c8(%rbp), %rdi
leaq 0x17e4a(%rip), %rsi     # 0x1d9c8
callq 0x18080
movq %rax, -0x9d0(%rbp)
jmp 0x5b8c
movq -0x9d0(%rbp), %rdi
callq 0x18160
movq %rax, -0x9d8(%rbp)
jmp 0x5ba1
movq -0x9d8(%rbp), %rsi
leaq -0x748(%rbp), %rdi
callq 0x18020
jmp 0x5bb6
movq -0x9b0(%rbp), %rdi
leaq -0x738(%rbp), %rsi
movl $0x30, %edx
leaq -0x748(%rbp), %rcx
callq 0x3390
jmp 0x5bd7
leaq -0x8e0(%rbp), %rdi
callq 0x181b0
leaq -0x1e8(%rbp), %rdi
callq 0x18560
addq $0x9e0, %rsp            # imm = 0x9E0
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1c8(%rbp)
movl %eax, -0x1cc(%rbp)
leaq -0x1b8(%rbp), %rdi
callq 0x181b0
jmp 0x5cb9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1c8(%rbp)
movl %eax, -0x1cc(%rbp)
jmp 0x5cad
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1c8(%rbp)
movl %eax, -0x1cc(%rbp)
leaq -0x3a0(%rbp), %rdi
callq 0x181b0
jmp 0x5cad
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1c8(%rbp)
movl %eax, -0x1cc(%rbp)
leaq -0x560(%rbp), %rdi
callq 0x181b0
jmp 0x5cad
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1c8(%rbp)
movl %eax, -0x1cc(%rbp)
leaq -0x720(%rbp), %rdi
callq 0x181b0
jmp 0x5cad
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1c8(%rbp)
movl %eax, -0x1cc(%rbp)
leaq -0x8e0(%rbp), %rdi
callq 0x181b0
leaq -0x1e8(%rbp), %rdi
callq 0x18560
movq -0x1c8(%rbp), %rdi
callq 0x3340
nopw %cs:(%rax,%rax)