/*
- * Copyright (C) 2006-2010 Michael Buesch <mb@bu3sch.de>
+ * Copyright (C) 2006-2010 Michael Buesch <m@bues.ch>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2
struct instruction *insn,
unsigned int opcode)
{
- int i;
+ unsigned int i;
struct operlist *ol;
int nr_oper = 0;
uint64_t code = 0;
unsigned int opcode;
switch (insn->op) {
+ case OP_MUL:
+ do_assemble_insn(ctx, insn, 0x101);
+ break;
case OP_ADD:
do_assemble_insn(ctx, insn, 0x1C0);
break;
out = do_assemble_insn(ctx, insn, 0x0DC | 0x1);
out->is_jump_insn = 1;
break;
+ case OP_JDN:
+ out = do_assemble_insn(ctx, insn, 0x0D6);
+ out->is_jump_insn = 1;
+ break;
+ case OP_JDPZ:
+ out = do_assemble_insn(ctx, insn, 0x0D6 | 0x1);
+ out->is_jump_insn = 1;
+ break;
+ case OP_JDP:
+ out = do_assemble_insn(ctx, insn, 0x0D8);
+ out->is_jump_insn = 1;
+ break;
+ case OP_JDNZ:
+ out = do_assemble_insn(ctx, insn, 0x0D8 | 0x1);
+ out->is_jump_insn = 1;
+ break;
case OP_JZX:
opcode = merge_ext_into_opcode(ctx, 0x400, insn);
out = do_assemble_insn(ctx, insn, opcode);
{
struct code_output *c;
int addr;
- int i;
+ unsigned int i;
unsigned int current_address;
/* Calculate the absolute addresses for each instruction. */
{
INIT_LIST_HEAD(&infile.sl);
INIT_LIST_HEAD(&infile.ivals);
-#ifdef YYDEBUG
+#if YYDEBUG
if (IS_INSANE_DEBUG)
yydebug = 1;
else