This is the mail archive of the
mailing list for the CGEN project.
Re: cgen fundamentals
> Hi David. Welcome.
> CGEN is a framework, in which CGEN applications run. There are a
> handful of these now: an opcodes table generator, a simulator kernel
> generator, and so on. If you just want to port binutils, you need
> only concern yourself with generating the opcodes/* files. The GNU
> binutils "opcodes" directory has Makefile fragments for other ports
> (like fr30) that can be duplicated almost verbatim. These Makefile
> fragment are responsible for running CGEN for you and depositing the
> output files in the opcodes/ source directory. I would suggest you
> focus on writing your CPU description first and then work out how to
> run it from opcodes/Makefile.
> Please feel free to ask more questions on this otherwise quiet list!
Oh, I will. Don't worry... :)
So, basically, I define my own .cpu file and add a new target to the
binutils/opcodes Makefile (that'll use cgen in conjunction with my .cpu
file), correct? After I get cgen to properly generate files for
binutils/opcodes, I'll need to write my own cpu-???.* and elf32-???.* files
for the binutils/bfd, right?
What else will I need to do to get an assembler up and running?