// File: /workspace/github_c_makefile_star2_O2/deplinenoise[P]tundra/unittest/Test_Buffer.cpp
// Function: BufferTest_Fill_Test::TestBody()
TEST_F(BufferTest, Fill)
{
  Buffer<int> b;

  BufferInit(&b);
  int* ptr = BufferAllocFill(&b, &heap, 3, -1);
  ASSERT_EQ(3, b.m_Size);
  ASSERT_EQ(-1, ptr[0]);
  ASSERT_EQ(-1, ptr[1]);
  ASSERT_EQ(-1, ptr[2]);
  BufferDestroy(&b, &heap);
  ASSERT_EQ(nullptr, b.m_Storage);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x40, %rsp
movq %rdi, %rbx
xorps %xmm0, %xmm0
leaq 0x20(%rsp), %rdi
movaps %xmm0, (%rdi)
andq $0x0, 0x10(%rdi)
addq $0x10, %rbx
pushq $0x3
popq %rdx
pushq $-0x1
popq %rcx
movq %rbx, %rsi
callq 0x28476
movq %rax, %r14
movq %rsp, %rcx
movl $0x3, (%rcx)
leaq 0x28(%rsp), %r8
leaq 0x1f493(%rip), %rsi     # 0x47549
leaq 0x1e332(%rip), %rdx     # 0x463ef
leaq 0x10(%rsp), %r15
movq %r15, %rdi
callq 0x287b5
cmpb $0x0, (%r15)
je 0x281e2
leaq 0x18(%rsp), %rdi
callq 0x2295e
movq %rsp, %rcx
orl $-0x1, (%rcx)
leaq 0x1d05b(%rip), %rsi     # 0x45146
leaq 0x1e312(%rip), %rdx     # 0x46404
leaq 0x10(%rsp), %r15
movq %r15, %rdi
movq %r14, %r8
callq 0x2785d
cmpb $0x0, (%r15)
je 0x281f9
leaq 0x18(%rsp), %rdi
callq 0x2295e
movq %rsp, %rcx
orl $-0x1, (%rcx)
leaq 0x4(%r14), %r8
leaq 0x1d01f(%rip), %rsi     # 0x45146
leaq 0x1e2dd(%rip), %rdx     # 0x4640b
leaq 0x10(%rsp), %r15
movq %r15, %rdi
callq 0x2785d
cmpb $0x0, (%r15)
je 0x28240
leaq 0x18(%rsp), %rdi
callq 0x2295e
movq %rsp, %rcx
orl $-0x1, (%rcx)
addq $0x8, %r14
leaq 0x1cfe6(%rip), %rsi     # 0x45146
leaq 0x1e2ab(%rip), %rdx     # 0x46412
leaq 0x10(%rsp), %r15
movq %r15, %rdi
movq %r14, %r8
callq 0x2785d
cmpb $0x0, (%r15)
je 0x28284
leaq 0x18(%rsp), %rdi
callq 0x2295e
leaq 0x20(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rsi
callq 0x283d2
movq (%r14), %r8
leaq 0x1e236(%rip), %rsi     # 0x463db
leaq 0x1e237(%rip), %rdx     # 0x463e3
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x283aa
cmpb $0x0, (%rbx)
jne 0x28359
movq %rsp, %rdi
callq 0x11c8e
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x2831c
movq (%rax), %r8
jmp 0x28323
movq %rsp, %rdi
callq 0x11c8e
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x28210
movq (%rax), %r8
jmp 0x28217
movq %rsp, %rdi
callq 0x11c8e
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x28257
movq (%rax), %r8
jmp 0x2825e
leaq 0x21c90(%rip), %r8      # 0x49ea7
leaq 0x1e1a4(%rip), %rdx     # 0x463c2
leaq 0x8(%rsp), %rdi
pushq $0x2
popq %rsi
pushq $0x4b
popq %rcx
callq 0x104f8
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10576
jmp 0x282f3
movq %rsp, %rdi
callq 0x11c8e
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x2829b
movq (%rax), %r8
jmp 0x282a2
leaq 0x21c49(%rip), %r8      # 0x49ea7
leaq 0x1e15d(%rip), %rdx     # 0x463c2
leaq 0x8(%rsp), %rdi
pushq $0x2
popq %rsi
pushq $0x4c
popq %rcx
callq 0x104f8
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10576
jmp 0x282f3
movq %rsp, %rdi
callq 0x11c8e
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x282c8
movq (%rax), %r8
jmp 0x282cf
leaq 0x21c05(%rip), %r8      # 0x49ea7
leaq 0x1e119(%rip), %rdx     # 0x463c2
leaq 0x8(%rsp), %rdi
pushq $0x2
popq %rsi
pushq $0x4d
popq %rcx
callq 0x104f8
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10576
jmp 0x282f3
leaq 0x21bd8(%rip), %r8      # 0x49ea7
leaq 0x1e0ec(%rip), %rdx     # 0x463c2
leaq 0x8(%rsp), %rdi
pushq $0x2
popq %rsi
pushq $0x4e
popq %rcx
callq 0x104f8
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10576
leaq 0x18(%rsp), %rbx
leaq 0x8(%rsp), %rdi
callq 0x10558
movq %rsp, %rdi
callq 0x1f8e0
movq %rbx, %rdi
callq 0x2295e
addq $0x40, %rsp
popq %rbx
popq %r14
popq %r15
retq
leaq 0x21b84(%rip), %r8      # 0x49ea7
leaq 0x1e098(%rip), %rdx     # 0x463c2
leaq 0x8(%rsp), %rdi
pushq $0x2
popq %rsi
pushq $0x50
popq %rcx
callq 0x104f8
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10576
leaq 0x8(%rsp), %rdi
callq 0x10558
movq %rsp, %rdi
callq 0x1f8e0
leaq 0x18(%rsp), %rdi
jmp 0x2830d
jmp 0x28378
jmp 0x28387
jmp 0x28394
jmp 0x28378
jmp 0x28387
jmp 0x28394
jmp 0x28378
jmp 0x28387
jmp 0x28394
jmp 0x28378
jmp 0x28387
jmp 0x28394
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x10558
jmp 0x2838a
movq %rax, %rbx
movq %rsp, %rdi
callq 0x1f8e0
jmp 0x28397
movq %rax, %rbx
leaq 0x18(%rsp), %rdi
callq 0x2295e
movq %rbx, %rdi
callq 0xdbf0
nop