// File: /workspace/github_c_makefile_star2_O0/phillbush[P]hoc/code.c
// Function: debug
void
debug(void)
{
	Inst *p;
	size_t n;

	for (n = 0, p = prog.base; p && p != prog.progp; n++, p = p->next) {
		fprintf(stderr, "CODE %03zu: ", n);
		switch (p->type) {
		case NARG:
			fprintf(stderr, "NARG %d", p->u.narg);
			break;
		case VAL:
			fprintf(stderr, "VAL  %.8g", p->u.val);
			break;
		case NAME:
			fprintf(stderr, "SYM  %s", p->u.name->s);
			break;
		case OPR:
			fprintf(stderr, "OPR  %s", oprname(p->u.opr));
			break;
		case STR:
			fprintf(stderr, "STR  %s", p->u.str->s);
			break;
		case IP:
			if (p->u.ip == NULL)
				fprintf(stderr, "IP -> NULL");
			else
				fprintf(stderr, "IP -> %03td", n + (p->u.ip - p));
			break;
		}
		fprintf(stderr, "\n");
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq $0x0, -0x10(%rbp)
movq 0xf9d9(%rip), %rax      # 0x12870
movq %rax, -0x8(%rbp)
xorl %eax, %eax
cmpq $0x0, -0x8(%rbp)
movb %al, -0x11(%rbp)
je 0x2eb8
movq -0x8(%rbp), %rax
cmpq 0xf9b6(%rip), %rax      # 0x12868
setne %al
movb %al, -0x11(%rbp)
movb -0x11(%rbp), %al
testb $0x1, %al
jne 0x2ec4
jmp 0x3072
movq 0xd12d(%rip), %rax      # 0xfff8
movq (%rax), %rdi
movq -0x10(%rbp), %rdx
leaq 0x8295(%rip), %rsi      # 0xb16e
xorl %eax, %eax
callq 0x21a0
movq -0x8(%rbp), %rax
movl 0x8(%rax), %eax
movq %rax, -0x20(%rbp)
subq $0x5, %rax
ja 0x303e
movq -0x20(%rbp), %rax
leaq 0x8148(%rip), %rcx      # 0xb048
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0xd0e8(%rip), %rax      # 0xfff8
movq (%rax), %rdi
movq -0x8(%rbp), %rax
movl 0x10(%rax), %edx
leaq 0x825a(%rip), %rsi      # 0xb17b
movb $0x0, %al
callq 0x21a0
jmp 0x303e
movq 0xd0c4(%rip), %rax      # 0xfff8
movq (%rax), %rdi
movq -0x8(%rbp), %rax
movsd 0x10(%rax), %xmm0
leaq 0x823c(%rip), %rsi      # 0xb183
movb $0x1, %al
callq 0x21a0
jmp 0x303e
movq 0xd09e(%rip), %rax      # 0xfff8
movq (%rax), %rdi
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rdx
leaq 0x821d(%rip), %rsi      # 0xb18d
movb $0x0, %al
callq 0x21a0
jmp 0x303e
movq 0xd075(%rip), %rax      # 0xfff8
movq (%rax), %rax
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0x3080
movq -0x28(%rbp), %rdi
movq %rax, %rdx
leaq 0x81f0(%rip), %rsi      # 0xb195
movb $0x0, %al
callq 0x21a0
jmp 0x303e
movq 0xd040(%rip), %rax      # 0xfff8
movq (%rax), %rdi
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movq 0x18(%rax), %rdx
leaq 0x81cf(%rip), %rsi      # 0xb19d
movb $0x0, %al
callq 0x21a0
jmp 0x303e
movq -0x8(%rbp), %rax
cmpq $0x0, 0x10(%rax)
jne 0x2ffc
movq 0xd00f(%rip), %rax      # 0xfff8
movq (%rax), %rdi
leaq 0x81b2(%rip), %rsi      # 0xb1a5
movb $0x0, %al
callq 0x21a0
jmp 0x303c
movq 0xcff5(%rip), %rax      # 0xfff8
movq (%rax), %rdi
movq -0x10(%rbp), %rax
movq %rax, -0x30(%rbp)
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl $0x18, %ecx
cqto
idivq %rcx
movq -0x30(%rbp), %rdx
addq %rax, %rdx
leaq 0x817b(%rip), %rsi      # 0xb1b0
movb $0x0, %al
callq 0x21a0
jmp 0x303e
movq 0xcfb3(%rip), %rax      # 0xfff8
movq (%rax), %rdi
leaq 0x7fd2(%rip), %rsi      # 0xb021
movb $0x0, %al
callq 0x21a0
movq -0x10(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x8(%rbp)
jmp 0x2e9b
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax,%rax)