// File: /workspace/github_cpp_makefile_star2_O1/jstaursky[P]hutch/src/Sleigh/slghsymbol.cc
// Function: ContextCommit::restoreXml(Element const*, SleighBase*)
void ContextCommit::restoreXml(const Element *el,SleighBase *trans)

{
  uintm id;
  {
    istringstream s(el->getAttributeValue("id"));
    s.unsetf(ios::dec | ios::hex | ios::oct);
    s >> id;
    sym = (TripleSymbol *)trans->findSymbol(id);
  }
  {
    istringstream s(el->getAttributeValue("num"));
    s.unsetf(ios::dec | ios::hex | ios::oct);
    s >> num;
  }
  {
    istringstream s(el->getAttributeValue("mask"));
    s.unsetf(ios::dec | ios::hex | ios::oct);
    s >> mask;
  }
  if (el->getNumAttributes()==4)
    flow = xml_readbool(el->getAttributeValue("flow"));
  else
    flow = true;		// Default is to flow.  flow=true
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x1a8, %rsp            # imm = 0x1A8
movq %rdx, %r15
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x10(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x11fbe(%rip), %rsi     # 0x7fd10
leaq 0x11fb9(%rip), %rdx     # 0x7fd12
movq %rsp, %rdi
callq 0x3f8a0
movq %rsp, %rsi
movq %r14, %rdi
callq 0x40f70
leaq 0x28(%rsp), %rdi
movq %rax, %rsi
movl $0x8, %edx
callq 0x41c80
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x6dd94
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x40870
leaq 0x28(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
andl $-0x4b, 0x40(%rsp,%rax)
leaq 0x24(%rsp), %rsi
callq 0x41eb0
movl 0x24(%rsp), %eax
movq 0x198(%r15), %rcx
movq (%rcx,%rax,8), %rax
movq %rax, 0x8(%rbx)
movq 0x34f47(%rip), %rsi     # 0xa2d10
leaq 0x28(%rsp), %rdi
callq 0x41440
leaq 0xa0(%rsp), %rdi
callq 0x3f730
movq %rsp, %rdi
movq %r12, (%rdi)
leaq 0x11217(%rip), %rsi     # 0x7f004
leaq 0x11213(%rip), %rdx     # 0x7f007
callq 0x3f8a0
movq %rsp, %rsi
movq %r14, %rdi
callq 0x40f70
leaq 0x28(%rsp), %rdi
movq %rax, %rsi
movl $0x8, %edx
callq 0x41c80
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x6de2c
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x40870
leaq 0x28(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
andl $-0x4b, 0x40(%rsp,%rax)
leaq 0x10(%rbx), %rsi
callq 0x3fe80
movq 0x34ec3(%rip), %rsi     # 0xa2d10
leaq 0x28(%rsp), %rdi
callq 0x41440
leaq 0xa0(%rsp), %rdi
callq 0x3f730
movq %rsp, %rdi
movq %r12, (%rdi)
leaq 0x1279a(%rip), %rsi     # 0x8060b
leaq 0x12797(%rip), %rdx     # 0x8060f
callq 0x3f8a0
movq %rsp, %rsi
movq %r14, %rdi
callq 0x40f70
leaq 0x28(%rsp), %rdi
movq %rax, %rsi
movl $0x8, %edx
callq 0x41c80
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x6deb0
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x40870
leaq 0x28(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
andl $-0x4b, 0x40(%rsp,%rax)
leaq 0x14(%rbx), %rsi
callq 0x41eb0
movq 0x34e3f(%rip), %rsi     # 0xa2d10
leaq 0x28(%rsp), %rdi
callq 0x41440
leaq 0xa0(%rsp), %rdi
callq 0x3f730
movq 0x48(%r14), %rax
subq 0x40(%r14), %rax
movabsq $0x1fffffffe0, %rcx     # imm = 0x1FFFFFFFE0
andq %rax, %rcx
cmpq $0x80, %rcx
jne 0x6df70
leaq 0x38(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x133b8(%rip), %rsi     # 0x812ce
leaq 0x133b5(%rip), %rdx     # 0x812d2
leaq 0x28(%rsp), %rdi
callq 0x3f8a0
leaq 0x28(%rsp), %rsi
movq %r14, %rdi
callq 0x40f70
cmpq $0x0, 0x8(%rax)
je 0x6df52
movq (%rax), %rax
movzbl (%rax), %ecx
movb $0x1, %al
cmpl $0x31, %ecx
je 0x6df54
cmpl $0x74, %ecx
je 0x6df54
cmpl $0x79, %ecx
je 0x6df54
xorl %eax, %eax
movb %al, 0x18(%rbx)
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x6df74
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x40870
jmp 0x6df74
movb $0x1, 0x18(%rbx)
addq $0x1a8, %rsp            # imm = 0x1A8
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movq %rax, %rbx
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x6dfe6
movq 0x38(%rsp), %rsi
jmp 0x6dfde
jmp 0x6dfc4
jmp 0x6dfa1
jmp 0x6dfc4
jmp 0x6dfa1
jmp 0x6dfc4
movq %rax, %rbx
movq 0x34d65(%rip), %rsi     # 0xa2d10
leaq 0x28(%rsp), %rdi
callq 0x41440
leaq 0xa0(%rsp), %rdi
callq 0x3f730
jmp 0x6dfe6
movq %rax, %rbx
jmp 0x6dfe6
jmp 0x6dfcd
jmp 0x6dfcd
movq %rax, %rbx
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x6dfe6
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x40870
movq %rbx, %rdi
callq 0x41f00