// File: /workspace/github_cpp_makefile_star2_O3/jstaursky[P]hutch/src/Sleigh/slghpatexpress.cc
// Function: OperandValue::restoreXml(Element const*, Translate*)
void OperandValue::restoreXml(const Element *el,Translate *trans)

{
  uintm ctid,tabid;
  {
    istringstream s(el->getAttributeValue("index"));
    s.unsetf(ios::dec | ios::hex | ios::oct);
    s >> index;
  }
  {
    istringstream s(el->getAttributeValue("table"));
    s.unsetf(ios::dec | ios::hex | ios::oct);
    s >> tabid;
  }
  {
    istringstream s(el->getAttributeValue("ct"));
    s.unsetf(ios::dec | ios::hex | ios::oct);
    s >> ctid;
  }
  SleighBase *sleigh = (SleighBase *)trans;
  SubtableSymbol *tab = dynamic_cast<SubtableSymbol *>(sleigh->findSymbol(tabid));
  ct = tab->getConstructor(ctid);
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x1a8, %rsp            # imm = 0x1A8
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %rbx
leaq 0x10(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x21d5a(%rip), %rsi     # 0x7f726
leaq 0x21d58(%rip), %rdx     # 0x7f72b
movq %rsp, %rdi
callq 0x3f8a0
movq %rsp, %rsi
movq %r15, %rdi
callq 0x40f80
leaq 0x28(%rsp), %rdi
movq %rax, %rsi
movl $0x8, %edx
callq 0x41c90
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x5da0e
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x40880
leaq 0x28(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
andl $-0x4b, 0x40(%rsp,%rax)
leaq 0xc(%rbx), %rsi
callq 0x3fe80
movq 0x452e1(%rip), %rsi     # 0xa2d10
leaq 0x28(%rsp), %rdi
callq 0x41450
leaq 0xa0(%rsp), %rdi
callq 0x3f730
movq %rsp, %rdi
movq %r12, (%rdi)
leaq 0x23911(%rip), %rsi     # 0x81364
leaq 0x2390f(%rip), %rdx     # 0x81369
callq 0x3f8a0
movq %rsp, %rsi
movq %r15, %rdi
callq 0x40f80
leaq 0x28(%rsp), %rdi
movq %rax, %rsi
movl $0x8, %edx
callq 0x41c90
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x5da92
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x40880
leaq 0x28(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
andl $-0x4b, 0x40(%rsp,%rax)
leaq 0x20(%rsp), %rsi
callq 0x41ec0
movq 0x4525c(%rip), %rsi     # 0xa2d10
leaq 0x28(%rsp), %rdi
callq 0x41450
leaq 0xa0(%rsp), %rdi
callq 0x3f730
movq %rsp, %rdi
movq %r12, (%rdi)
leaq 0x23b6f(%rip), %rsi     # 0x81647
leaq 0x23b6a(%rip), %rdx     # 0x81649
callq 0x3f8a0
movq %rsp, %rsi
movq %r15, %rdi
callq 0x40f80
leaq 0x28(%rsp), %rdi
movq %rax, %rsi
movl $0x8, %edx
callq 0x41c90
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x5db17
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x40880
leaq 0x28(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
andl $-0x4b, 0x40(%rsp,%rax)
leaq 0x24(%rsp), %rsi
callq 0x41ec0
movq 0x451d7(%rip), %rsi     # 0xa2d10
leaq 0x28(%rsp), %rdi
callq 0x41450
leaq 0xa0(%rsp), %rdi
callq 0x3f730
movl 0x20(%rsp), %eax
movq 0x198(%r14), %rcx
movq (%rcx,%rax,8), %rdi
movq 0x44fe2(%rip), %rsi     # 0xa2b48
movq 0x4538b(%rip), %rdx     # 0xa2ef8
xorl %ecx, %ecx
callq 0x40b60
movl 0x24(%rsp), %ecx
movq 0x40(%rax), %rax
movq (%rax,%rcx,8), %rax
movq %rax, 0x10(%rbx)
addq $0x1a8, %rsp            # imm = 0x1A8
popq %rbx
popq %r12
popq %r14
popq %r15
retq
jmp 0x5db9b
jmp 0x5dbbe
jmp 0x5db9b
jmp 0x5dbbe
movq %rax, %rbx
movq 0x4516b(%rip), %rsi     # 0xa2d10
leaq 0x28(%rsp), %rdi
callq 0x41450
leaq 0xa0(%rsp), %rdi
callq 0x3f730
jmp 0x5dbe0
movq %rax, %rbx
jmp 0x5dbe0
jmp 0x5dbc7
jmp 0x5dbc7
movq %rax, %rbx
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x5dbe0
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x40880
movq %rbx, %rdi
callq 0x41f10