// File: wichtounet[P]articles/src/vector_list/bench.cpp
// Function: bench_random_remove<Trivial<8>>::run()
static void run(){
        new_graph<T>("random_remove", "ms");

        auto sizes = {10000, 20000, 30000, 40000, 50000, 60000, 70000, 80000, 90000, 100000};
        bench<std::vector<T>, milliseconds, FilledRandom, Erase>("vector", sizes);
        bench<std::list<T>,   milliseconds, FilledRandom, Erase>("list",   sizes);
        bench<std::deque<T>,  milliseconds, FilledRandom, Erase>("deque",  sizes);
        bench<std::vector<T>, milliseconds, FilledRandom, RemoveErase>("vector_rem", sizes);
    }

// Assembly:
subq $0x168, %rsp            # imm = 0x168
leaq 0x147(%rsp), %rdi
movq %rdi, 0x28(%rsp)
callq 0x3370
movq 0x28(%rsp), %rdx
leaq 0x56720(%rip), %rsi     # 0xc8535
leaq 0x148(%rsp), %rdi
callq 0x32a0
jmp 0x71e24
leaq 0x10f(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0x3370
movq 0x20(%rsp), %rdx
leaq 0x566f0(%rip), %rsi     # 0xc8532
leaq 0x110(%rsp), %rdi
callq 0x32a0
jmp 0x71e51
leaq 0x148(%rsp), %rdi
leaq 0x110(%rsp), %rsi
callq 0x9c60
jmp 0x71e68
leaq 0x110(%rsp), %rdi
callq 0x3150
leaq 0x10f(%rsp), %rdi
callq 0x3240
leaq 0x148(%rsp), %rdi
callq 0x3150
leaq 0x147(%rsp), %rdi
callq 0x3240
movabsq $0x186a000015f90, %rax  # imm = 0x186A000015F90
movq %rax, 0xf0(%rsp)
vmovdqu 0x56e3a(%rip), %ymm0    # 0xc8cf0
vmovdqu %ymm0, 0xd0(%rsp)
leaq 0xd0(%rsp), %rax
movq %rax, 0xf8(%rsp)
movq $0xa, 0x100(%rsp)
leaq 0xaf(%rsp), %rdi
movq %rdi, 0x18(%rsp)
vzeroupper
callq 0x3370
movq 0x18(%rsp), %rdx
leaq 0x564d5(%rip), %rsi     # 0xc83d1
leaq 0xb0(%rsp), %rdi
callq 0x32a0
jmp 0x71f0b
leaq 0xb0(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x721f0
jmp 0x71f22
leaq 0xb0(%rsp), %rdi
callq 0x3150
leaq 0xaf(%rsp), %rdi
callq 0x3240
leaq 0x87(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0x3370
movq 0x10(%rsp), %rdx
leaq 0x5647e(%rip), %rsi     # 0xc83d8
leaq 0x88(%rsp), %rdi
callq 0x32a0
jmp 0x71f69
leaq 0x88(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x72420
jmp 0x71f80
leaq 0x88(%rsp), %rdi
callq 0x3150
leaq 0x87(%rsp), %rdi
callq 0x3240
leaq 0x5f(%rsp), %rdi
movq %rdi, 0x8(%rsp)
callq 0x3370
movq 0x8(%rsp), %rdx
leaq 0x56428(%rip), %rsi     # 0xc83dd
leaq 0x60(%rsp), %rdi
callq 0x32a0
jmp 0x71fc1
leaq 0x60(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x72650
jmp 0x71fd5
leaq 0x60(%rsp), %rdi
callq 0x3150
leaq 0x5f(%rsp), %rdi
callq 0x3240
leaq 0x37(%rsp), %rdi
movq %rdi, (%rsp)
callq 0x3370
movq (%rsp), %rdx
leaq 0x56541(%rip), %rsi     # 0xc8543
leaq 0x38(%rsp), %rdi
callq 0x32a0
jmp 0x7200e
leaq 0x38(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x72890
jmp 0x72022
leaq 0x38(%rsp), %rdi
callq 0x3150
leaq 0x37(%rsp), %rdi
callq 0x3240
addq $0x168, %rsp            # imm = 0x168
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x138(%rsp)
movl %eax, 0x134(%rsp)
jmp 0x720a5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x138(%rsp)
movl %eax, 0x134(%rsp)
jmp 0x7208b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x138(%rsp)
movl %eax, 0x134(%rsp)
leaq 0x110(%rsp), %rdi
callq 0x3150
leaq 0x10f(%rsp), %rdi
callq 0x3240
leaq 0x148(%rsp), %rdi
callq 0x3150
leaq 0x147(%rsp), %rdi
callq 0x3240
jmp 0x721c4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x138(%rsp)
movl %eax, 0x134(%rsp)
jmp 0x720ee
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x138(%rsp)
movl %eax, 0x134(%rsp)
leaq 0xb0(%rsp), %rdi
callq 0x3150
leaq 0xaf(%rsp), %rdi
callq 0x3240
jmp 0x721c4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x138(%rsp)
movl %eax, 0x134(%rsp)
jmp 0x72137
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x138(%rsp)
movl %eax, 0x134(%rsp)
leaq 0x88(%rsp), %rdi
callq 0x3150
leaq 0x87(%rsp), %rdi
callq 0x3240
jmp 0x721c4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x138(%rsp)
movl %eax, 0x134(%rsp)
jmp 0x7217a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x138(%rsp)
movl %eax, 0x134(%rsp)
leaq 0x60(%rsp), %rdi
callq 0x3150
leaq 0x5f(%rsp), %rdi
callq 0x3240
jmp 0x721c4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x138(%rsp)
movl %eax, 0x134(%rsp)
jmp 0x721ba
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x138(%rsp)
movl %eax, 0x134(%rsp)
leaq 0x38(%rsp), %rdi
callq 0x3150
leaq 0x37(%rsp), %rdi
callq 0x3240
movq 0x138(%rsp), %rdi
callq 0x3360
nopw %cs:(%rax,%rax)
nopl (%rax,%rax)