// File: 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:
subq $0x618, %rsp            # imm = 0x618
movq %rdi, 0x610(%rsp)
movq %rsi, 0x608(%rsp)
movq %rdx, 0x600(%rsp)
movq 0x610(%rsp), %rax
movq %rax, 0xb0(%rsp)
movq 0x608(%rsp), %rax
movq %rax, 0xb8(%rsp)
leaq 0x457(%rsp), %rdi
movq %rdi, 0xc0(%rsp)
callq 0xe0c80
movq 0xc0(%rsp), %rdx
leaq 0x3aa69(%rip), %rsi     # 0x187d0c
leaq 0x458(%rsp), %rdi
callq 0xe00a0
jmp 0x14d2b2
movq 0xb8(%rsp), %rdi
leaq 0x458(%rsp), %rsi
callq 0xdb6f0
movq %rax, 0xa8(%rsp)
jmp 0x14d2d1
movq 0xa8(%rsp), %rsi
leaq 0x478(%rsp), %rdi
movl $0x8, %edx
callq 0xdfcc0
jmp 0x14d2ed
leaq 0x458(%rsp), %rdi
callq 0xd4550
leaq 0x457(%rsp), %rdi
callq 0xd8ec0
movq 0x478(%rsp), %rax
movq -0x18(%rax), %rax
leaq 0x478(%rsp,%rax), %rax
movq %rax, 0x98(%rsp)
movl $0x2, %edi
movl $0x8, %esi
callq 0xe0e70
movl %eax, 0xa4(%rsp)
jmp 0x14d33b
movl 0xa4(%rsp), %edi
movl $0x40, %esi
callq 0xe0e70
movl %eax, 0x94(%rsp)
jmp 0x14d355
movl 0x94(%rsp), %esi
movq 0x98(%rsp), %rdi
callq 0xda6e0
jmp 0x14d36b
leaq 0x478(%rsp), %rdi
leaq 0x5fc(%rsp), %rsi
callq 0xceae0
jmp 0x14d382
movq 0x600(%rsp), %rdi
movl 0x5fc(%rsp), %esi
callq 0xd45f0
movq %rax, 0x88(%rsp)
jmp 0x14d3a0
movq 0xb0(%rsp), %rax
movq 0x88(%rsp), %rcx
movq %rcx, 0x8(%rax)
leaq 0x478(%rsp), %rdi
callq 0xd25a0
movq 0x608(%rsp), %rax
movq %rax, 0x78(%rsp)
leaq 0x29f(%rsp), %rdi
movq %rdi, 0x80(%rsp)
callq 0xe0c80
movq 0x80(%rsp), %rdx
leaq 0x39c12(%rip), %rsi     # 0x187004
leaq 0x2a0(%rsp), %rdi
callq 0xe00a0
jmp 0x14d401
movq 0x78(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0xdb6f0
movq %rax, 0x70(%rsp)
jmp 0x14d41a
movq 0x70(%rsp), %rsi
leaq 0x2c0(%rsp), %rdi
movl $0x8, %edx
callq 0xdfcc0
jmp 0x14d433
leaq 0x2a0(%rsp), %rdi
callq 0xd4550
leaq 0x29f(%rsp), %rdi
callq 0xd8ec0
movq 0x2c0(%rsp), %rax
movq -0x18(%rax), %rax
leaq 0x2c0(%rsp,%rax), %rax
movq %rax, 0x60(%rsp)
movl $0x2, %edi
movl $0x8, %esi
callq 0xe0e70
movl %eax, 0x6c(%rsp)
jmp 0x14d47b
movl 0x6c(%rsp), %edi
movl $0x40, %esi
callq 0xe0e70
movl %eax, 0x5c(%rsp)
jmp 0x14d48f
movl 0x5c(%rsp), %esi
movq 0x60(%rsp), %rdi
callq 0xda6e0
jmp 0x14d49f
movq 0xb0(%rsp), %rsi
addq $0x10, %rsi
leaq 0x2c0(%rsp), %rdi
callq 0xd4480
jmp 0x14d4ba
leaq 0x2c0(%rsp), %rdi
callq 0xd25a0
movq 0x608(%rsp), %rax
movq %rax, 0x48(%rsp)
leaq 0xf7(%rsp), %rdi
movq %rdi, 0x50(%rsp)
callq 0xe0c80
movq 0x50(%rsp), %rdx
leaq 0x3b121(%rip), %rsi     # 0x188613
leaq 0xf8(%rsp), %rdi
callq 0xe00a0
jmp 0x14d501
movq 0x48(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0xdb6f0
movq %rax, 0x40(%rsp)
jmp 0x14d51a
movq 0x40(%rsp), %rsi
leaq 0x118(%rsp), %rdi
movl $0x8, %edx
callq 0xdfcc0
jmp 0x14d533
leaq 0xf8(%rsp), %rdi
callq 0xd4550
leaq 0xf7(%rsp), %rdi
callq 0xd8ec0
movq 0x118(%rsp), %rax
movq -0x18(%rax), %rax
leaq 0x118(%rsp,%rax), %rax
movq %rax, 0x30(%rsp)
movl $0x2, %edi
movl $0x8, %esi
callq 0xe0e70
movl %eax, 0x3c(%rsp)
jmp 0x14d57b
movl 0x3c(%rsp), %edi
movl $0x40, %esi
callq 0xe0e70
movl %eax, 0x2c(%rsp)
jmp 0x14d58f
movl 0x2c(%rsp), %esi
movq 0x30(%rsp), %rdi
callq 0xda6e0
jmp 0x14d59f
movq 0xb0(%rsp), %rsi
addq $0x14, %rsi
leaq 0x118(%rsp), %rdi
callq 0xceae0
jmp 0x14d5ba
leaq 0x118(%rsp), %rdi
callq 0xd25a0
movq 0x608(%rsp), %rdi
callq 0xd2b80
cmpl $0x4, %eax
jne 0x14d7fe
movq 0x608(%rsp), %rax
movq %rax, 0x18(%rsp)
leaq 0xcf(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0xe0c80
movq 0x20(%rsp), %rdx
leaq 0x3bb66(%rip), %rsi     # 0x18916e
leaq 0xd0(%rsp), %rdi
callq 0xe00a0
jmp 0x14d617
movq 0x18(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
callq 0xdb6f0
movq %rax, 0x10(%rsp)
jmp 0x14d630
movq 0x10(%rsp), %rdi
callq 0xd9e90
movb %al, 0xf(%rsp)
jmp 0x14d640
movq 0xb0(%rsp), %rax
movb 0xf(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x18(%rax)
leaq 0xd0(%rsp), %rdi
callq 0xd4550
leaq 0xcf(%rsp), %rdi
callq 0xd8ec0
jmp 0x14d80a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x448(%rsp)
movl %eax, 0x444(%rsp)
jmp 0x14d6a8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x448(%rsp)
movl %eax, 0x444(%rsp)
leaq 0x458(%rsp), %rdi
callq 0xd4550
leaq 0x457(%rsp), %rdi
callq 0xd8ec0
jmp 0x14d812
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x448(%rsp)
movl %eax, 0x444(%rsp)
leaq 0x478(%rsp), %rdi
callq 0xd25a0
jmp 0x14d812
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x448(%rsp)
movl %eax, 0x444(%rsp)
jmp 0x14d717
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x448(%rsp)
movl %eax, 0x444(%rsp)
leaq 0x2a0(%rsp), %rdi
callq 0xd4550
leaq 0x29f(%rsp), %rdi
callq 0xd8ec0
jmp 0x14d812
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x448(%rsp)
movl %eax, 0x444(%rsp)
leaq 0x2c0(%rsp), %rdi
callq 0xd25a0
jmp 0x14d812
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x448(%rsp)
movl %eax, 0x444(%rsp)
jmp 0x14d786
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x448(%rsp)
movl %eax, 0x444(%rsp)
leaq 0xf8(%rsp), %rdi
callq 0xd4550
leaq 0xf7(%rsp), %rdi
callq 0xd8ec0
jmp 0x14d812
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x448(%rsp)
movl %eax, 0x444(%rsp)
leaq 0x118(%rsp), %rdi
callq 0xd25a0
jmp 0x14d812
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x448(%rsp)
movl %eax, 0x444(%rsp)
jmp 0x14d7ef
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x448(%rsp)
movl %eax, 0x444(%rsp)
leaq 0xd0(%rsp), %rdi
callq 0xd4550
leaq 0xcf(%rsp), %rdi
callq 0xd8ec0
jmp 0x14d812
movq 0xb0(%rsp), %rax
movb $0x1, 0x18(%rax)
addq $0x618, %rsp            # imm = 0x618
retq
movq 0x448(%rsp), %rdi
callq 0xe0be0
nop