// File: /workspace/github_cpp_makefile_star2_O1/jstaursky[P]hutch/src/Sleigh/slgh_compile.cc
// Function: SleighCompile::checkConsistency()
void SleighCompile::checkConsistency(void)

{
  ConsistencyChecker checker(root,warnunnecessarypcode,warndeadtemps);

  if (!checker.test()) {
    errors += 1;
    return;
  }
  if (!checker.testTruncations(isBigEndian())) {
    errors += 1;
    return;
  }
  if ((!warnunnecessarypcode)&&(checker.getNumUnnecessaryPcode() > 0)) {
    cerr << dec << checker.getNumUnnecessaryPcode();
    cerr << " unnecessary extensions/truncations were converted to copies" << endl;
    cerr << "Use -u switch to list each individually" << endl;
  }
  checker.optimizeAll();
  if (checker.getNumReadNoWrite() > 0) {
    errors += 1;
    return;
  }
  if ((!warndeadtemps)&&(checker.getNumWriteNoRead() > 0)) {
    cerr << dec << checker.getNumWriteNoRead();
    cerr << " operations wrote to temporaries that were not read" << endl;
    cerr << "Use -t switch to list each individually" << endl;
  }
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x68, %rsp
movq %rdi, %rbx
movq 0x190(%rdi), %rax
movzwl 0x334(%rdi), %ecx
xorl %edx, %edx
leaq 0x40(%rsp), %rsi
movq %rdx, -0x10(%rsi)
xorps %xmm0, %xmm0
movups %xmm0, -0x20(%rsi)
movl %edx, (%rsi)
movq %rdx, 0x8(%rsi)
movq %rsi, 0x10(%rsi)
movq %rsi, 0x18(%rsi)
movq %rdx, 0x20(%rsi)
movq %rax, -0x28(%rsi)
movl %edx, -0x38(%rsi)
movq %rdx, -0x34(%rsi)
movw %cx, -0x2c(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x2cfc4
testb %al, %al
je 0x2ea9b
movzbl 0x120(%rbx), %esi
leaq 0x8(%rsp), %rdi
callq 0x2d02e
testb %al, %al
je 0x2ea9b
cmpb $0x0, 0x334(%rbx)
jne 0x2ea8a
movl 0x8(%rsp), %esi
testl %esi, %esi
jle 0x2ea8a
movq 0x5e604(%rip), %rdi     # 0x8cfe8
movq (%rdi), %rax
movq -0x18(%rax), %rax
movl 0x18(%rdi,%rax), %ecx
andl $-0x4b, %ecx
orl $0x2, %ecx
movl %ecx, 0x18(%rdi,%rax)
callq 0xf6e0
movq 0x5e5e3(%rip), %r14     # 0x8cfe8
leaq 0x33830(%rip), %rsi     # 0x6223c
movl $0x3c, %edx
movq %r14, %rdi
callq 0xf420
movq (%r14), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0xf340
movsbl %al, %esi
movq 0x5e5b1(%rip), %rdi     # 0x8cfe8
callq 0xf040
movq %rax, %rdi
callq 0xf260
movq 0x5e59d(%rip), %r14     # 0x8cfe8
leaq 0x33827(%rip), %rsi     # 0x62279
movl $0x27, %edx
movq %r14, %rdi
callq 0xf420
movq (%r14), %rax
addq -0x18(%rax), %r14
movq %r14, %rdi
movl $0xa, %esi
callq 0xf340
movsbl %al, %esi
movq 0x5e56b(%rip), %rdi     # 0x8cfe8
callq 0xf040
movq %rax, %rdi
callq 0xf260
leaq 0x8(%rsp), %rdi
callq 0x2d138
cmpl $0x0, 0xc(%rsp)
jle 0x2eacc
incl 0x358(%rbx)
leaq 0x38(%rsp), %rbx
movq %rbx, %rdi
callq 0x34b02
movq -0x18(%rbx), %rdi
testq %rdi, %rdi
je 0x2eac4
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0xf380
addq $0x68, %rsp
popq %rbx
popq %r14
retq
cmpb $0x0, 0x335(%rbx)
jne 0x2eaa1
movl 0x10(%rsp), %esi
testl %esi, %esi
jle 0x2eaa1
movq 0x5e504(%rip), %rdi     # 0x8cfe8
movq (%rdi), %rax
movq -0x18(%rax), %rax
movl 0x18(%rdi,%rax), %ecx
andl $-0x4b, %ecx
orl $0x2, %ecx
movl %ecx, 0x18(%rdi,%rax)
callq 0xf6e0
movq 0x5e4e3(%rip), %rbx     # 0x8cfe8
leaq 0x33795(%rip), %rsi     # 0x622a1
movl $0x33, %edx
movq %rbx, %rdi
callq 0xf420
movq (%rbx), %rax
addq -0x18(%rax), %rbx
movq %rbx, %rdi
movl $0xa, %esi
callq 0xf340
movsbl %al, %esi
movq 0x5e4b1(%rip), %rdi     # 0x8cfe8
callq 0xf040
movq %rax, %rdi
callq 0xf260
movq 0x5e49d(%rip), %rbx     # 0x8cfe8
leaq 0x33783(%rip), %rsi     # 0x622d5
movl $0x27, %edx
movq %rbx, %rdi
callq 0xf420
movq (%rbx), %rax
addq -0x18(%rax), %rbx
movq %rbx, %rdi
movl $0xa, %esi
callq 0xf340
movsbl %al, %esi
movq 0x5e46b(%rip), %rdi     # 0x8cfe8
callq 0xf040
movq %rax, %rdi
callq 0xf260
jmp 0x2eaa1
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x34686
movq %rbx, %rdi
callq 0xf730