// File: /workspace/github_c_makefile_star2_O2/deplinenoise[P]tundra/unittest/googletest/googletest/src/gtest-death-test.cc
// Function: testing::internal::ParseInternalRunDeathTestFlag()
InternalRunDeathTestFlag* ParseInternalRunDeathTestFlag() {
  if (GTEST_FLAG(internal_run_death_test) == "") return NULL;

  // GTEST_HAS_DEATH_TEST implies that we have ::std::string, so we
  // can use it here.
  int line = -1;
  int index = -1;
  ::std::vector< ::std::string> fields;
  SplitString(GTEST_FLAG(internal_run_death_test).c_str(), '|', &fields);
  int write_fd = -1;

# if GTEST_OS_WINDOWS

  unsigned int parent_process_id = 0;
  size_t write_handle_as_size_t = 0;
  size_t event_handle_as_size_t = 0;

  if (fields.size() != 6
      || !ParseNaturalNumber(fields[1], &line)
      || !ParseNaturalNumber(fields[2], &index)
      || !ParseNaturalNumber(fields[3], &parent_process_id)
      || !ParseNaturalNumber(fields[4], &write_handle_as_size_t)
      || !ParseNaturalNumber(fields[5], &event_handle_as_size_t)) {
    DeathTestAbort("Bad --gtest_internal_run_death_test flag: " +
                   GTEST_FLAG(internal_run_death_test));
  }
  write_fd = GetStatusFileDescriptor(parent_process_id,
                                     write_handle_as_size_t,
                                     event_handle_as_size_t);
# else

  if (fields.size() != 4
      || !ParseNaturalNumber(fields[1], &line)
      || !ParseNaturalNumber(fields[2], &index)
      || !ParseNaturalNumber(fields[3], &write_fd)) {
    DeathTestAbort("Bad --gtest_internal_run_death_test flag: "
        + GTEST_FLAG(internal_run_death_test));
  }

# endif  // GTEST_OS_WINDOWS

  return new InternalRunDeathTestFlag(fields[0], line, index, write_fd);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x48, %rsp
leaq 0x4bf85(%rip), %rdi     # 0x698a0
leaq 0x2c585(%rip), %rsi     # 0x49ea7
callq 0x216cd
testb %al, %al
je 0x1d933
xorl %r14d, %r14d
jmp 0x1da16
orl $-0x1, 0xc(%rsp)
orl $-0x1, 0x8(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
andq $0x0, 0x20(%rsp)
movq 0x4bf4e(%rip), %rsi     # 0x698a0
leaq 0x28(%rsp), %rdi
leaq 0x4(%rsp), %rdx
callq 0x1f4d6
leaq 0x28(%rsp), %rdi
pushq $0x7c
popq %rsi
leaq 0x10(%rsp), %rdx
callq 0x11b85
leaq 0x28(%rsp), %rdi
callq 0xdd68
orl $-0x1, 0x4(%rsp)
movq 0x10(%rsp), %rdi
movq 0x18(%rsp), %rax
subq %rdi, %rax
cmpq $0x80, %rax
jne 0x1da24
addq $0x20, %rdi
leaq 0xc(%rsp), %rsi
callq 0x2214d
testb %al, %al
je 0x1da24
movq 0x10(%rsp), %rdi
addq $0x40, %rdi
leaq 0x8(%rsp), %rsi
callq 0x2214d
testb %al, %al
je 0x1da24
movq 0x10(%rsp), %rdi
addq $0x60, %rdi
leaq 0x4(%rsp), %rsi
callq 0x2214d
testb %al, %al
je 0x1da24
pushq $0x30
popq %rdi
callq 0xd600
movq %rax, %r14
movq 0x10(%rsp), %rsi
movl 0xc(%rsp), %ebx
movl 0x8(%rsp), %ebp
movl 0x4(%rsp), %r15d
movq %rax, %rdi
callq 0xd920
movl %ebx, 0x20(%r14)
movl %ebp, 0x24(%r14)
movl %r15d, 0x28(%r14)
leaq 0x10(%rsp), %rdi
callq 0x1f470
movq %r14, %rax
addq $0x48, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
leaq 0x27782(%rip), %rsi     # 0x451ad
leaq 0x4be6e(%rip), %rdx     # 0x698a0
leaq 0x28(%rsp), %rdi
callq 0x220d7
leaq 0x28(%rsp), %rdi
callq 0x1aed0
movq %rax, %rbx
pushq $0x30
popq %rsi
movq %r14, %rdi
callq 0xd630
jmp 0x1da6e
jmp 0x1da5a
jmp 0x1da6b
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0xdd68
jmp 0x1da6e
jmp 0x1da6b
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x1f470
movq %rbx, %rdi
callq 0xdbf0