// File: /workspace/github_cpp_makefile_star2_O2/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::LogEntry::MergeFrom(panda::LogEntry const&)
void LogEntry::MergeFrom(const LogEntry& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:panda.LogEntry)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._has_bits_[0];
  if (cached_has_bits & 0x000000ffu) {
    if (cached_has_bits & 0x00000001u) {
      _internal_set_process_name(from._internal_process_name());
    }
    if (cached_has_bits & 0x00000002u) {
      _internal_mutable_call_stack()->::panda::CallStack::MergeFrom(from._internal_call_stack());
    }
    if (cached_has_bits & 0x00000004u) {
      _internal_mutable_tainted_branch()->::panda::TaintedBranch::MergeFrom(from._internal_tainted_branch());
    }
    if (cached_has_bits & 0x00000008u) {
      _internal_mutable_tainted_instr()->::panda::TaintedInstr::MergeFrom(from._internal_tainted_instr());
    }
    if (cached_has_bits & 0x00000010u) {
      _internal_mutable_taint_query_hypercall()->::panda::TaintQueryHypercall::MergeFrom(from._internal_taint_query_hypercall());
    }
    if (cached_has_bits & 0x00000020u) {
      _internal_mutable_attack_point()->::panda::AttackPoint::MergeFrom(from._internal_attack_point());
    }
    if (cached_has_bits & 0x00000040u) {
      _internal_mutable_tainted_instr_summary()->::panda::TaintedInstrSummary::MergeFrom(from._internal_tainted_instr_summary());
    }
    if (cached_has_bits & 0x00000080u) {
      _internal_mutable_dwarf_call()->::panda::DwarfCall::MergeFrom(from._internal_dwarf_call());
    }
  }
  if (cached_has_bits & 0x0000ff00u) {
    if (cached_has_bits & 0x00000100u) {
      _internal_mutable_dwarf_ret()->::panda::DwarfCall::MergeFrom(from._internal_dwarf_ret());
    }
    if (cached_has_bits & 0x00000200u) {
      _internal_mutable_taint_query_pri()->::panda::TaintQueryPri::MergeFrom(from._internal_taint_query_pri());
    }
    if (cached_has_bits & 0x00000400u) {
      _internal_mutable_attack_point_pri()->::panda::AttackPointPri::MergeFrom(from._internal_attack_point_pri());
    }
    if (cached_has_bits & 0x00000800u) {
      _internal_mutable_pri_trace_src_info()->::panda::SrcInfoPri::MergeFrom(from._internal_pri_trace_src_info());
    }
    if (cached_has_bits & 0x00001000u) {
      _internal_mutable_tainted_branch_summary()->::panda::TaintedBranchSummary::MergeFrom(from._internal_tainted_branch_summary());
    }
    if (cached_has_bits & 0x00002000u) {
      pc_ = from.pc_;
    }
    if (cached_has_bits & 0x00004000u) {
      instr_ = from.instr_;
    }
    if (cached_has_bits & 0x00008000u) {
      asid_ = from.asid_;
    }
    _has_bits_[0] |= cached_has_bits;
  }
  if (cached_has_bits & 0x001f0000u) {
    if (cached_has_bits & 0x00010000u) {
      taint_label_virtual_addr_ = from.taint_label_virtual_addr_;
    }
    if (cached_has_bits & 0x00020000u) {
      process_id_ = from.process_id_;
    }
    if (cached_has_bits & 0x00040000u) {
      taint_label_number_ = from.taint_label_number_;
    }
    if (cached_has_bits & 0x00080000u) {
      taint_label_physical_addr_ = from.taint_label_physical_addr_;
    }
    if (cached_has_bits & 0x00100000u) {
      total_instr_ = from.total_instr_;
    }
    _has_bits_[0] |= cached_has_bits;
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x48, %rsp
movq %rsi, %r14
movq %rdi, %rbx
cmpq %rdi, %rsi
jne 0x108d5
leaq 0x58dc(%rip), %rdx      # 0x16176
leaq 0x10(%rsp), %r15
pushq $0x3
popq %rsi
movq %r15, %rdi
movl $0x18d0, %ecx           # imm = 0x18D0
callq 0x6520
leaq 0x58cb(%rip), %rsi      # 0x16181
movq %r15, %rdi
callq 0x6570
leaq 0xf(%rsp), %rdi
movq %rax, %rsi
callq 0x6440
leaq 0x10(%rsp), %rdi
callq 0x6590
movq 0x8(%r14), %rsi
testb $0x1, %sil
je 0x108f0
leaq 0x8(%rbx), %rdi
andq $-0x2, %rsi
addq $0x8, %rsi
callq 0x1466a
movl 0x10(%r14), %ebp
testb %bpl, %bpl
je 0x10a26
testb $0x1, %bpl
je 0x1090f
movq 0x18(%r14), %rsi
movq %rbx, %rdi
callq 0x13e4a
testb $0x2, %bpl
je 0x10937
movq %rbx, %rdi
callq 0x136d6
movq 0x20(%r14), %rcx
testq %rcx, %rcx
leaq 0x11dad(%rip), %rsi     # 0x226d8
cmovneq %rcx, %rsi
movq %rax, %rdi
callq 0x8b74
testb $0x4, %bpl
je 0x1095f
movq %rbx, %rdi
callq 0x1377e
movq 0x28(%r14), %rcx
testq %rcx, %rcx
leaq 0x11fd5(%rip), %rsi     # 0x22928
cmovneq %rcx, %rsi
movq %rax, %rdi
callq 0xdff6
testb $0x8, %bpl
je 0x10987
movq %rbx, %rdi
callq 0x13826
movq 0x30(%r14), %rcx
testq %rcx, %rcx
leaq 0x1200d(%rip), %rsi     # 0x22988
cmovneq %rcx, %rsi
movq %rax, %rdi
callq 0xec32
testb $0x10, %bpl
je 0x109af
movq %rbx, %rdi
callq 0x138ce
movq 0x38(%r14), %rcx
testq %rcx, %rcx
leaq 0x11f25(%rip), %rsi     # 0x228c8
cmovneq %rcx, %rsi
movq %rax, %rdi
callq 0xd846
testb $0x20, %bpl
je 0x109d7
movq %rbx, %rdi
callq 0x13976
movq 0x40(%r14), %rcx
testq %rcx, %rcx
leaq 0x11ecd(%rip), %rsi     # 0x22898
cmovneq %rcx, %rsi
movq %rax, %rdi
callq 0xcce0
testb $0x40, %bpl
je 0x109ff
movq %rbx, %rdi
callq 0x13a1e
movq 0x48(%r14), %rcx
testq %rcx, %rcx
leaq 0x11fcd(%rip), %rsi     # 0x229c0
cmovneq %rcx, %rsi
movq %rax, %rdi
callq 0xf19a
testb %bpl, %bpl
jns 0x10a26
movq %rbx, %rdi
callq 0x13ac6
movq 0x50(%r14), %rcx
testq %rcx, %rcx
leaq 0x11ce6(%rip), %rsi     # 0x22700
cmovneq %rcx, %rsi
movq %rax, %rdi
callq 0x9364
testw $0xff00, %bp            # imm = 0xFF00
je 0x10b37
btl $0x8, %ebp
jae 0x10a59
movq %rbx, %rdi
callq 0x13af6
movq 0x58(%r14), %rcx
testq %rcx, %rcx
leaq 0x11cb3(%rip), %rsi     # 0x22700
cmovneq %rcx, %rsi
movq %rax, %rdi
callq 0x9364
btl $0x9, %ebp
jae 0x10a81
movq %rbx, %rdi
callq 0x13b9e
movq 0x60(%r14), %rcx
testq %rcx, %rcx
leaq 0x11d33(%rip), %rsi     # 0x227a8
cmovneq %rcx, %rsi
movq %rax, %rdi
callq 0xb0ca
btl $0xa, %ebp
jae 0x10aa9
movq %rbx, %rdi
callq 0x13c46
movq 0x68(%r14), %rcx
testq %rcx, %rcx
leaq 0x11cdb(%rip), %rsi     # 0x22778
cmovneq %rcx, %rsi
movq %rax, %rdi
callq 0xa564
btl $0xb, %ebp
jae 0x10ad1
movq %rbx, %rdi
callq 0x13c76
movq 0x70(%r14), %rcx
testq %rcx, %rcx
leaq 0x11c7b(%rip), %rsi     # 0x22740
cmovneq %rcx, %rsi
movq %rax, %rdi
callq 0x9cb0
btl $0xc, %ebp
jae 0x10af9
movq %rbx, %rdi
callq 0x13d1e
movq 0x78(%r14), %rcx
testq %rcx, %rcx
leaq 0x11e73(%rip), %rsi     # 0x22960
cmovneq %rcx, %rsi
movq %rax, %rdi
callq 0xe55e
btl $0xd, %ebp
jae 0x10b0d
movq 0x80(%r14), %rax
movq %rax, 0x80(%rbx)
btl $0xe, %ebp
jae 0x10b21
movq 0x88(%r14), %rax
movq %rax, 0x88(%rbx)
testw %bp, %bp
jns 0x10b34
movq 0x90(%r14), %rax
movq %rax, 0x90(%rbx)
orl %ebp, 0x10(%rbx)
testl $0x1f0000, %ebp         # imm = 0x1F0000
je 0x10ba4
btl $0x10, %ebp
jae 0x10b53
movq 0x98(%r14), %rax
movq %rax, 0x98(%rbx)
btl $0x11, %ebp
jae 0x10b66
movl 0xa0(%r14), %eax
movl %eax, 0xa0(%rbx)
btl $0x12, %ebp
jae 0x10b79
movl 0xa4(%r14), %eax
movl %eax, 0xa4(%rbx)
btl $0x13, %ebp
jae 0x10b8d
movq 0xa8(%r14), %rax
movq %rax, 0xa8(%rbx)
btl $0x14, %ebp
jae 0x10ba1
movq 0xb0(%r14), %rax
movq %rax, 0xb0(%rbx)
orl %ebp, 0x10(%rbx)
addq $0x48, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
jmp 0x10bb1
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x6590
movq %rbx, %rdi
callq 0x65a0