// File: /workspace/github_c_makefile_star2_O3/deplinenoise[P]tundra/unittest/Test_IncludeScanner.cpp
// Function: IncludeScannerTest_SingleIncludeNewline_Test::TestBody()
TEST_F(IncludeScannerTest, SingleIncludeNewline)
{
  char data[] = "#include \"foo.h\"\n";
  IncludeData* incs = ScanIncludesCpp(data, &alloc);
  ASSERT_NE(nullptr, incs);

  ASSERT_STREQ("foo.h", incs->m_String);
  ASSERT_EQ(5, incs->m_StringLen);
  ASSERT_EQ(false, incs->m_IsSystemInclude);
  ASSERT_EQ(true, incs->m_ShouldFollow);
  ASSERT_EQ(nullptr, incs->m_Next);
}

// Assembly:
pushq %rbx
subq $0x50, %rsp
movaps 0x20ec2(%rip), %xmm0    # 0x54950
leaq 0x30(%rsp), %rax
movaps %xmm0, (%rax)
movw $0xa, 0x10(%rax)
leaq 0x18(%rdi), %rsi
movq %rax, %rdi
callq 0x41008
leaq 0x28(%rsp), %r8
movq %rax, (%r8)
leaq 0x8(%rsp), %rcx
movq $0x0, (%rcx)
leaq 0x20948(%rip), %rsi     # 0x5440b
leaq 0x20d69(%rip), %rdx     # 0x54833
leaq 0x18(%rsp), %rbx
movq %rbx, %rdi
callq 0x35890
cmpb $0x0, (%rbx)
je 0x33c52
leaq 0x20(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
movq 0x28(%rsp), %rax
movq (%rax), %r8
leaq 0x20d52(%rip), %rsi     # 0x5484d
leaq 0x20d53(%rip), %rdx     # 0x54855
leaq 0x20d5b(%rip), %rcx     # 0x54864
leaq 0x18(%rsp), %rbx
movq %rbx, %rdi
callq 0x14ffa
cmpb $0x0, (%rbx)
je 0x33c6b
leaq 0x20(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
leaq 0x8(%rsp), %rcx
movl $0x5, (%rcx)
movq 0x28(%rsp), %r8
addq $0x8, %r8
leaq 0x2285a(%rip), %rsi     # 0x563a0
leaq 0x20d1d(%rip), %rdx     # 0x5486a
leaq 0x18(%rsp), %rbx
movq %rbx, %rdi
callq 0x32e9d
cmpb $0x0, (%rbx)
je 0x33cfd
leaq 0x20(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
leaq 0x8(%rsp), %rcx
movb $0x0, (%rcx)
movq 0x28(%rsp), %r8
addq $0x10, %r8
leaq 0x1f719(%rip), %rsi     # 0x532a0
leaq 0x20cee(%rip), %rdx     # 0x5487c
leaq 0x18(%rsp), %rbx
movq %rbx, %rdi
callq 0x35f40
cmpb $0x0, (%rbx)
je 0x33d8f
leaq 0x20(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
leaq 0x8(%rsp), %rcx
movb $0x1, (%rcx)
movq 0x28(%rsp), %r8
addq $0x11, %r8
leaq 0x1eb92(%rip), %rsi     # 0x5275a
leaq 0x20cc5(%rip), %rdx     # 0x54894
leaq 0x18(%rsp), %rbx
movq %rbx, %rdi
callq 0x35f40
cmpb $0x0, (%rbx)
je 0x33e21
leaq 0x20(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
movq 0x28(%rsp), %rax
movq 0x18(%rax), %rax
leaq 0x8(%rsp), %r8
movq %rax, (%r8)
leaq 0x10(%rsp), %rcx
movq $0x0, (%rcx)
leaq 0x207f6(%rip), %rsi     # 0x5440b
leaq 0x20c8d(%rip), %rdx     # 0x548a9
leaq 0x18(%rsp), %rbx
movq %rbx, %rdi
callq 0x35b78
cmpb $0x0, (%rbx)
jne 0x33f7c
leaq 0x8(%rsp), %rdi
callq 0x12e46
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x33f1b
movq (%rax), %r8
jmp 0x33f22
leaq 0x8(%rsp), %rdi
callq 0x12e46
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x33c8b
movq (%rax), %r8
jmp 0x33c92
leaq 0x8(%rsp), %rdi
callq 0x12e46
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x33d1d
movq (%rax), %r8
jmp 0x33d24
leaq 0x24235(%rip), %r8      # 0x57ec7
leaq 0x20b79(%rip), %rdx     # 0x54812
leaq 0x10(%rsp), %rdi
movl $0x2, %esi
movl $0x29, %ecx
callq 0x10b64
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x10c00
leaq 0x10(%rsp), %rdi
callq 0x10bd0
cmpq $0x0, 0x8(%rsp)
je 0x33cec
movl $0x1, %edi
callq 0x10b61
testb %al, %al
je 0x33cec
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x33cec
movq (%rdi), %rax
callq *0x8(%rax)
leaq 0x20(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
jmp 0x33f88
leaq 0x8(%rsp), %rdi
callq 0x12e46
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x33daf
movq (%rax), %r8
jmp 0x33db6
leaq 0x241a3(%rip), %r8      # 0x57ec7
leaq 0x20ae7(%rip), %rdx     # 0x54812
leaq 0x10(%rsp), %rdi
movl $0x2, %esi
movl $0x2b, %ecx
callq 0x10b64
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x10c00
leaq 0x10(%rsp), %rdi
callq 0x10bd0
cmpq $0x0, 0x8(%rsp)
je 0x33d7e
movl $0x1, %edi
callq 0x10b61
testb %al, %al
je 0x33d7e
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x33d7e
movq (%rdi), %rax
callq *0x8(%rax)
leaq 0x20(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
jmp 0x33f88
leaq 0x8(%rsp), %rdi
callq 0x12e46
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x33e3a
movq (%rax), %r8
jmp 0x33e41
leaq 0x24111(%rip), %r8      # 0x57ec7
leaq 0x20a55(%rip), %rdx     # 0x54812
leaq 0x10(%rsp), %rdi
movl $0x2, %esi
movl $0x2c, %ecx
callq 0x10b64
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x10c00
leaq 0x10(%rsp), %rdi
callq 0x10bd0
cmpq $0x0, 0x8(%rsp)
je 0x33e10
movl $0x1, %edi
callq 0x10b61
testb %al, %al
je 0x33e10
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x33e10
movq (%rdi), %rax
callq *0x8(%rax)
leaq 0x20(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
jmp 0x33f88
leaq 0x8(%rsp), %rdi
callq 0x12e46
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x33eac
movq (%rax), %r8
jmp 0x33eb3
leaq 0x24086(%rip), %r8      # 0x57ec7
leaq 0x209ca(%rip), %rdx     # 0x54812
leaq 0x10(%rsp), %rdi
movl $0x2, %esi
movl $0x2d, %ecx
callq 0x10b64
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x10c00
leaq 0x10(%rsp), %rdi
callq 0x10bd0
cmpq $0x0, 0x8(%rsp)
je 0x33e9b
movl $0x1, %edi
callq 0x10b61
testb %al, %al
je 0x33e9b
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x33e9b
movq (%rdi), %rax
callq *0x8(%rax)
leaq 0x20(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
jmp 0x33f88
leaq 0x24014(%rip), %r8      # 0x57ec7
leaq 0x20958(%rip), %rdx     # 0x54812
leaq 0x10(%rsp), %rdi
movl $0x2, %esi
movl $0x2e, %ecx
callq 0x10b64
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x10c00
leaq 0x10(%rsp), %rdi
callq 0x10bd0
cmpq $0x0, 0x8(%rsp)
je 0x33f0d
movl $0x1, %edi
callq 0x10b61
testb %al, %al
je 0x33f0d
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x33f0d
movq (%rdi), %rax
callq *0x8(%rax)
leaq 0x20(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
jmp 0x33f88
leaq 0x23fa5(%rip), %r8      # 0x57ec7
leaq 0x208e9(%rip), %rdx     # 0x54812
leaq 0x10(%rsp), %rdi
movl $0x2, %esi
movl $0x2f, %ecx
callq 0x10b64
leaq 0x10(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x10c00
leaq 0x10(%rsp), %rdi
callq 0x10bd0
cmpq $0x0, 0x8(%rsp)
je 0x33f7c
movl $0x1, %edi
callq 0x10b61
testb %al, %al
je 0x33f7c
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x33f7c
movq (%rdi), %rax
callq *0x8(%rax)
leaq 0x20(%rsp), %rdi
xorl %esi, %esi
callq 0x2c37a
addq $0x50, %rsp
popq %rbx
retq
jmp 0x33fff
jmp 0x33fcc
jmp 0x33fdb
jmp 0x33fea
jmp 0x33fff
jmp 0x33fff
jmp 0x33fff
jmp 0x33fcc
jmp 0x33fdb
jmp 0x33fea
jmp 0x33fff
jmp 0x33fff
jmp 0x33fff
jmp 0x33fcc
jmp 0x33fdb
jmp 0x33fea
jmp 0x33fff
jmp 0x33fff
jmp 0x33fff
jmp 0x33fcc
jmp 0x33fdb
jmp 0x33fea
jmp 0x33fff
jmp 0x33fff
jmp 0x33fff
jmp 0x33fcc
jmp 0x33fdb
jmp 0x33fea
jmp 0x33fff
jmp 0x33fff
jmp 0x33fff
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x10bd0
jmp 0x33fde
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x31a70
jmp 0x33fed
movq %rax, %rbx
leaq 0x18(%rsp), %rdi
callq 0x31a82
movq %rbx, %rdi
callq 0xcbb0
movq %rax, %rdi
callq 0x287ef
nop