// File: /workspace/github_c_makefile_star2_O3/deplinenoise[P]tundra/unittest/Test_Json.cpp
// Function: JsonTest_EmptyObject_Test::TestBody()
TEST_F(JsonTest, EmptyObject)
{
  char input[] = "{}";
  const JsonValue* v = JsonParse(input, &alloc, &scratch, error_msg);

  ASSERT_STREQ("", error_msg);
  ASSERT_NE(nullptr, v);

  ASSERT_EQ(JsonValue::kObject, v->m_Type);
  ASSERT_EQ(0, v->AsObject()->m_Count);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x30, %rsp
leaq 0x2c(%rsp), %rax
movb $0x0, 0x2(%rax)
movw $0x7d7b, (%rax)         # imm = 0x7D7B
leaq 0x18(%rdi), %rsi
leaq 0x50(%rdi), %rdx
leaq 0x88(%rdi), %r14
movq %rax, %rdi
movq %r14, %rcx
callq 0x41494
movq %rax, 0x20(%rsp)
leaq 0x1e2ec(%rip), %rsi     # 0x54d5f
leaq 0x1e2e8(%rip), %rdx     # 0x54d62
leaq 0x21446(%rip), %rbx     # 0x57ec7
leaq 0x10(%rsp), %r15
movq %r15, %rdi
movq %rbx, %rcx
movq %r14, %r8
callq 0x14ffa
cmpb $0x0, (%r15)
je 0x36b85
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
movq %rsp, %rcx
movq $0x0, (%rcx)
leaq 0x1d950(%rip), %rsi     # 0x5440b
leaq 0x1d34f(%rip), %rdx     # 0x53e11
leaq 0x10(%rsp), %rbx
leaq 0x20(%rsp), %r8
movq %rbx, %rdi
callq 0x396c7
cmpb $0x0, (%rbx)
je 0x36c04
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
movq %rsp, %rcx
movl $0x2, (%rcx)
movq 0x20(%rsp), %r8
leaq 0x1e36d(%rip), %rsi     # 0x54e6b
leaq 0x1e379(%rip), %rdx     # 0x54e7e
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
callq 0x3a110
cmpb $0x0, (%rbx)
je 0x36c1b
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
movq %rsp, %rcx
movl $0x0, (%rcx)
movq 0x20(%rsp), %rax
xorl %r8d, %r8d
cmpl $0x2, (%rax)
cmoveq %rax, %r8
addq $0x8, %r8
leaq 0x1cfee(%rip), %rsi     # 0x53b38
leaq 0x1e337(%rip), %rdx     # 0x54e88
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
callq 0x32e9d
cmpb $0x0, (%rbx)
jne 0x36d68
movq %rsp, %rdi
callq 0x12e46
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x36d0b
movq (%rax), %r8
jmp 0x36d12
movq %rsp, %rdi
callq 0x12e46
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x36b9a
movq (%rax), %rbx
leaq 0x1e1a7(%rip), %rdx     # 0x54d48
leaq 0x8(%rsp), %rdi
movl $0x2, %esi
movl $0x39, %ecx
movq %rbx, %r8
callq 0x10b64
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10c00
leaq 0x8(%rsp), %rdi
callq 0x10bd0
cmpq $0x0, (%rsp)
je 0x36bf3
movl $0x1, %edi
callq 0x10b61
testb %al, %al
je 0x36bf3
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x36bf3
movq (%rdi), %rax
callq *0x8(%rax)
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
jmp 0x36d74
movq %rsp, %rdi
callq 0x12e46
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x36c32
movq (%rax), %r8
jmp 0x36c39
movq %rsp, %rdi
callq 0x12e46
movq 0x18(%rsp), %rax
testq %rax, %rax
je 0x36ca0
movq (%rax), %r8
jmp 0x36ca7
leaq 0x2128e(%rip), %r8      # 0x57ec7
leaq 0x1e108(%rip), %rdx     # 0x54d48
leaq 0x8(%rsp), %rdi
movl $0x2, %esi
movl $0x3a, %ecx
callq 0x10b64
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10c00
leaq 0x8(%rsp), %rdi
callq 0x10bd0
cmpq $0x0, (%rsp)
je 0x36c8f
movl $0x1, %edi
callq 0x10b61
testb %al, %al
je 0x36c8f
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x36c8f
movq (%rdi), %rax
callq *0x8(%rax)
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
jmp 0x36d74
leaq 0x21220(%rip), %r8      # 0x57ec7
leaq 0x1e09a(%rip), %rdx     # 0x54d48
leaq 0x8(%rsp), %rdi
movl $0x2, %esi
movl $0x3c, %ecx
callq 0x10b64
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10c00
leaq 0x8(%rsp), %rdi
callq 0x10bd0
cmpq $0x0, (%rsp)
je 0x36cfd
movl $0x1, %edi
callq 0x10b61
testb %al, %al
je 0x36cfd
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x36cfd
movq (%rdi), %rax
callq *0x8(%rax)
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
jmp 0x36d74
leaq 0x211b5(%rip), %r8      # 0x57ec7
leaq 0x1e02f(%rip), %rdx     # 0x54d48
leaq 0x8(%rsp), %rdi
movl $0x2, %esi
movl $0x3d, %ecx
callq 0x10b64
leaq 0x8(%rsp), %rdi
movq %rsp, %rsi
callq 0x10c00
leaq 0x8(%rsp), %rdi
callq 0x10bd0
cmpq $0x0, (%rsp)
je 0x36d68
movl $0x1, %edi
callq 0x10b61
testb %al, %al
je 0x36d68
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x36d68
movq (%rdi), %rax
callq *0x8(%rax)
leaq 0x18(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
addq $0x30, %rsp
popq %rbx
popq %r14
popq %r15
retq
jmp 0x36dd5
jmp 0x36da4
jmp 0x36db3
jmp 0x36dc0
jmp 0x36dd5
jmp 0x36dd5
jmp 0x36dd5
jmp 0x36da4
jmp 0x36db3
jmp 0x36dc0
jmp 0x36dd5
jmp 0x36dd5
jmp 0x36dd5
jmp 0x36da4
jmp 0x36db3
jmp 0x36dc0
jmp 0x36dd5
jmp 0x36dd5
jmp 0x36dd5
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x10bd0
jmp 0x36db6
movq %rax, %rbx
movq %rsp, %rdi
callq 0x31a70
jmp 0x36dc3
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x31a82
movq %rbx, %rdi
callq 0xcbb0
movq %rax, %rdi
callq 0x287ef
nop