Re: BUG: non-fixed-length ISAs are unsupported for now

Sergey Belyashov via Cgen <[email protected]> Wed, 12 Aug 2020 16:59:28 +0300
Newsgroups gmane.comp.tools.cgen.devel
Message-ID <CAOe0RDzd0UZ30fvzf9jK-GQE6WkyLRaDOqOyfGrGbP8UkAv8rg@mail.gmail.com>
Hi,

> Does it work if you comment out all other instructions?  If yes, then
> I'd approach it with a bisection-like procedure to identify the real
> source of conflict.

I have tried it. Result is the same: ifields are just added (part of
generated z80-opc.c):

/* The instruction table.  */

static const CGEN_OPCODE z80_cgen_insn_opcode_table[MAX_INSNS] =
{
  /* Special null first entry.
     A `num' value of zero is thus invalid.
     Also, the special `invalid' insn resides here.  */
  { { 0, 0, 0, 0 }, {{0}}, 0, {0}},
/* retn */
  {
    { 0, 0, 0, 0 },
    { { MNEM, 0 } },
    & ifmt_retn, { 0x132 } //must be 0xED, 0x45
  },
/* reti */
  {
    { 0, 0, 0, 0 },
    { { MNEM, 0 } },
    & ifmt_retn, { 0x13a } //must be 0xED, 0x4D
  },
};

Also I have tried to make 0xED00 instead of 0xED and 0x4500 instead of
0x45/0x4D, generated C-code looks more correct but does not
disassemble 0xed 0x45 opcode.

Best regards,
Sergey Belyashov