// File: WeihuaZhu[P]hpc_prog2/./gtest/gtest-all.cc
// Function: testing::internal::XmlUnitTestResultPrinter::OutputXmlAttribute(std::ostream*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
void XmlUnitTestResultPrinter::OutputXmlAttribute(
    std::ostream* stream,
    const std::string& element_name,
    const std::string& name,
    const std::string& value) {
  const std::vector<std::string>& allowed_names =
      GetReservedAttributesForElement(element_name);

  GTEST_CHECK_(std::find(allowed_names.begin(), allowed_names.end(), name) !=
                   allowed_names.end())
      << "Attribute " << name << " is not allowed for element <" << element_name
      << ">.";

  *stream << " " << name << "=\"" << EscapeXmlAttribute(value) << "\"";
}

// Assembly:
subq $0x108, %rsp            # imm = 0x108
movq %rdi, 0x100(%rsp)
movq %rsi, 0xf8(%rsp)
movq %rdx, 0xf0(%rsp)
movq %rcx, 0xe8(%rsp)
movq 0xf8(%rsp), %rsi
leaq 0xc8(%rsp), %rdi
movq %rdi, 0x60(%rsp)
callq 0x1d690
movq 0x60(%rsp), %rax
movq %rax, 0xe0(%rsp)
movq 0xe0(%rsp), %rdi
callq 0x34ee0
movq %rax, 0xb8(%rsp)
movq 0xe0(%rsp), %rdi
callq 0x34f10
movq %rax, 0xb0(%rsp)
movq 0xf0(%rsp), %rdx
movq 0xb8(%rsp), %rdi
movq 0xb0(%rsp), %rsi
callq 0x34e80
movq %rax, 0x68(%rsp)
jmp 0x23cbc
movq 0x68(%rsp), %rax
movq %rax, 0xc0(%rsp)
movq 0xe0(%rsp), %rdi
callq 0x34f10
movq %rax, 0x98(%rsp)
leaq 0xc0(%rsp), %rdi
leaq 0x98(%rsp), %rsi
callq 0x34e40
movzbl %al, %edi
callq 0x16400
movb %al, 0x5f(%rsp)
jmp 0x23d01
movb 0x5f(%rsp), %al
testb $0x1, %al
jne 0x23d0b
jmp 0x23d29
jmp 0x23e1f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xa8(%rsp)
movl %eax, 0xa4(%rsp)
jmp 0x23ee5
leaq 0x28bcf(%rip), %rdx     # 0x4c8ff
leaq 0x94(%rsp), %rdi
movl $0x3, %esi
movl $0x1296, %ecx           # imm = 0x1296
callq 0x2fd30
jmp 0x23d49
leaq 0x94(%rsp), %rdi
callq 0x32a40
movq %rax, 0x50(%rsp)
jmp 0x23d5d
movq 0x50(%rsp), %rdi
leaq 0x29524(%rip), %rsi     # 0x4d28d
callq 0xea00
movq %rax, 0x48(%rsp)
jmp 0x23d75
movq 0x48(%rsp), %rdi
leaq 0x29572(%rip), %rsi     # 0x4d2f3
callq 0xea00
movq %rax, 0x40(%rsp)
jmp 0x23d8d
movq 0x40(%rsp), %rdi
movq 0xf0(%rsp), %rsi
callq 0xe900
movq %rax, 0x38(%rsp)
jmp 0x23da6
movq 0x38(%rsp), %rdi
leaq 0x2954c(%rip), %rsi     # 0x4d2fe
callq 0xea00
movq %rax, 0x30(%rsp)
jmp 0x23dbe
movq 0x30(%rsp), %rdi
movq 0xf8(%rsp), %rsi
callq 0xe900
movq %rax, 0x28(%rsp)
jmp 0x23dd7
movq 0x28(%rsp), %rdi
leaq 0x29539(%rip), %rsi     # 0x4d31c
callq 0xea00
jmp 0x23dea
leaq 0x94(%rsp), %rdi
callq 0x2fea0
jmp 0x23e1f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xa8(%rsp)
movl %eax, 0xa4(%rsp)
leaq 0x94(%rsp), %rdi
callq 0x2fea0
jmp 0x23ee5
movq 0x100(%rsp), %rdi
leaq 0x29b5f(%rip), %rsi     # 0x4d98d
callq 0xea00
movq %rax, 0x20(%rsp)
jmp 0x23e3a
movq 0x20(%rsp), %rdi
movq 0xf0(%rsp), %rsi
callq 0xe900
movq %rax, 0x18(%rsp)
jmp 0x23e53
movq 0x18(%rsp), %rdi
leaq 0x29513(%rip), %rsi     # 0x4d372
callq 0xea00
movq %rax, 0x10(%rsp)
jmp 0x23e6b
movq 0xe8(%rsp), %rsi
leaq 0x70(%rsp), %rdi
callq 0x37140
jmp 0x23e7f
movq 0x10(%rsp), %rdi
leaq 0x70(%rsp), %rsi
callq 0xe900
movq %rax, 0x8(%rsp)
jmp 0x23e95
movq 0x8(%rsp), %rdi
leaq 0x28c95(%rip), %rsi     # 0x4cb36
callq 0xea00
jmp 0x23ea8
leaq 0x70(%rsp), %rdi
callq 0xf698
leaq 0xc8(%rsp), %rdi
callq 0x34fc0
addq $0x108, %rsp            # imm = 0x108
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xa8(%rsp)
movl %eax, 0xa4(%rsp)
leaq 0x70(%rsp), %rdi
callq 0xf698
leaq 0xc8(%rsp), %rdi
callq 0x34fc0
movq 0xa8(%rsp), %rdi
callq 0xf410
nop