This is the mail archive of the cgen@sources.redhat.com mailing list for the CGEN project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: New port dsp56800


Hi,

On Mon, Jul 28, 2003 at 12:00:43PM -0400, Frank Ch. Eigler wrote:
> On Fri, Jul 25, 2003 at 10:28:50AM +0300, Jan Zizka wrote:
> > I've finished my port for dsp56800 and I would like to
> > contribute it to official CVS. 
> 
> Great.  On a technical level, did you find anything
> interesting or peculiar about using cgen to model this chip?

I have been little bit strugling with dsp's 16bit bytes and
I had to do some corrections for that:

  * cgen.c (gas_cgen_tc_gen_reloc): Calculate relocation address
    correctly using octets_per_byte.

I had some troubles to order the insns in .cpu file because 
dsp56800 mnemonics is quite complex. Also I couldn't figure
out how to treat two parameters in insn as one, since syntax
always counts number of args as those separated by ',' etc.
For dsp56800 there are in some insns only a number of allowed 
combinations and it is not possible to separate them 
(mul X0,Y0,A the X0 and Y0 is actually encoded together). But
it is not possible to cover them as one from cgen/gas point
of view. I have solved it by writing own parsing routine and
to satisfy syntax I've added a fake arg (the second one), 
pointing to some fixed bit :):

(define-pmacro (dalu3op2 name opcode)
     (dni (.sym name "-dalu3op2") (.str name " QQQ,FFF")
      ()
      (.str name " $qqq,$dummy,$fffcap")
      (+ (f-op-8 opcode) qqq (f-op-bit-2/3 3) fffcap dummy)
      ()
      ()
      )
)

where qqq is that kind of combination of two regs.


> You will require an FSF copyright assignment to contribute
> to GNU binutils, which would cover the various files in gas/, 
> opcodes/, ld/, etc.  At your option, you could assign your
> cgen input files to the FSF also, to simplify the situation.
> 
> Start by asking for the assignment process paperwork on
> binutils@sources.redhat.com.

Thanks I'll ask there :)

Ziza


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]