// File: /workspace/github_cpp_makefile_star2_O3/jstaursky[P]hutch/src/Sleigh/semantics.cc
// Function: ConstTpl::saveXml(std::ostream&) const
void ConstTpl::saveXml(ostream &s) const

{
  s << "<const_tpl type=\"";
  switch(type) {
  case real:
    s << "real\" val=\"0x" << hex << value_real << "\"/>";
    break;
  case handle:
    s << "handle\" val=\"" << dec << value.handle_index << "\" ";
    s << "s=\"";
    printHandleSelector(s,select);
    s << "\"";
    if (select == v_offset_plus)
      s << " plus=\"0x" << hex << value_real << "\"";
    s << "/>";
    break;
  case j_start:
    s << "start\"/>";
    break;
  case j_next:
    s << "next\"/>";
    break;
  case j_curspace:
    s << "curspace\"/>";
    break;
  case j_curspace_size:
    s << "curspace_size\"/>";
    break;
  case spaceid:
    s << "spaceid\" name=\"" << value.spaceid->getName() << "\"/>";
    break;
  case j_relative:
    s << "relative\" val=\"0x" << hex << value_real << "\"/>";
    break;
  case j_flowref:
    s << "flowref\"/>";
    break;
  case j_flowref_size:
    s << "flowref_size\"/>";
    break;
  case j_flowdest:
    s << "flowdest\"/>";
    break;
  case j_flowdest_size:
    s << "flowdest_size\"/>";
    break;
  }
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
leaq 0x2b3e7(%rip), %rsi     # 0x80212
movl $0x11, %edx
movq %rbx, %rdi
callq 0x40b90
movl (%r14), %eax
cmpq $0xb, %rax
ja 0x55033
leaq 0x2b30c(%rip), %rcx     # 0x80158
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x2b3c8(%rip), %rsi     # 0x80224
movl $0xd, %edx
jmp 0x54eba
leaq 0x2b45a(%rip), %rsi     # 0x802c4
jmp 0x54fca
leaq 0x2b3e8(%rip), %rsi     # 0x8025e
jmp 0x55011
leaq 0x2b426(%rip), %rsi     # 0x802a8
movl $0xf, %edx
jmp 0x55024
leaq 0x2b3ba(%rip), %rsi     # 0x8024d
movl $0x8, %edx
jmp 0x55024
leaq 0x2b3b2(%rip), %rsi     # 0x80256
movl $0x7, %edx
jmp 0x55024
leaq 0x2b3d6(%rip), %rsi     # 0x8028b
movl $0x11, %edx
movq %rbx, %rdi
callq 0x40b90
movq (%rbx), %rax
movq -0x18(%rax), %rax
movl 0x18(%rbx,%rax), %ecx
andl $-0x4b, %ecx
orl $0x8, %ecx
movl %ecx, 0x18(%rbx,%rax)
movq 0x10(%r14), %rsi
movq %rbx, %rdi
callq 0x3ffc0
jmp 0x54ff9
leaq 0x2b343(%rip), %rsi     # 0x80232
movl $0xd, %edx
movq %rbx, %rdi
callq 0x40b90
movq (%rbx), %rax
movq -0x18(%rax), %rax
movl 0x18(%rbx,%rax), %ecx
andl $-0x4b, %ecx
orl $0x2, %ecx
movl %ecx, 0x18(%rbx,%rax)
movl 0x8(%r14), %esi
movq %rbx, %rdi
callq 0x41db0
leaq 0x2b31c(%rip), %rsi     # 0x80240
movl $0x2, %edx
movq %rax, %rdi
callq 0x40b90
leaq 0x2b49a(%rip), %rsi     # 0x803d2
movl $0x3, %edx
movq %rbx, %rdi
callq 0x40b90
movl 0x18(%r14), %esi
movq %rbx, %rdi
callq 0x40410
leaq 0x2c68f(%rip), %rsi     # 0x815e7
movl $0x1, %edx
movq %rbx, %rdi
callq 0x40b90
cmpl $0x3, 0x18(%r14)
jne 0x54fb5
leaq 0x2b2d0(%rip), %rsi     # 0x80243
movl $0x9, %edx
movq %rbx, %rdi
callq 0x40b90
movq (%rbx), %rax
movq -0x18(%rax), %rax
movl 0x18(%rbx,%rax), %ecx
andl $-0x4b, %ecx
orl $0x8, %ecx
movl %ecx, 0x18(%rbx,%rax)
movq 0x10(%r14), %rsi
movq %rbx, %rdi
callq 0x3ffc0
leaq 0x2c63f(%rip), %rsi     # 0x815e7
movl $0x1, %edx
movq %rax, %rdi
callq 0x40b90
leaq 0x2b2ab(%rip), %rsi     # 0x80267
movl $0x2, %edx
jmp 0x55024
leaq 0x2b2a0(%rip), %rsi     # 0x8026a
movl $0x10, %edx
jmp 0x55024
leaq 0x2b2a3(%rip), %rsi     # 0x8027b
movl $0xf, %edx
movq %rbx, %rdi
callq 0x40b90
movq 0x8(%r14), %rax
movq 0x38(%rax), %rsi
movq 0x40(%rax), %rdx
movq %rbx, %rdi
callq 0x40b90
leaq 0x2b266(%rip), %rsi     # 0x80266
movl $0x3, %edx
movq %rax, %rdi
jmp 0x55027
leaq 0x2b2a7(%rip), %rsi     # 0x802b8
movl $0xb, %edx
jmp 0x55024
leaq 0x2b27e(%rip), %rsi     # 0x8029d
movl $0xa, %edx
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r14
jmp 0x40b90
addq $0x8, %rsp
popq %rbx
popq %r14
retq
nop