public inbox for cgen@sourceware.org
 help / color / mirror / Atom feed
From: "Frank Ch. Eigler" <fche@redhat.com>
To: Ralph Escherich <esche@mobilesmartsinc.com>
Cc: cgen@sources.redhat.com
Subject: Re: binutils porting to new CPU
Date: Wed, 29 Oct 2003 16:50:00 -0000	[thread overview]
Message-ID: <20031029165027.GA30779@redhat.com> (raw)
In-Reply-To: <200310290839.13951.esche@mobilesmartsinc.com>

[-- Attachment #1: Type: text/plain, Size: 1269 bytes --]

Hi -


>  [...]
> Do you have a more detailed API description of what is generated and
> how it should be used for porting the binutils? [...]

There isn't a really good list, I'm afraid.  None of those who have
built a complete port took the extra time to document all the steps
and nuances.  It's all rather vernacular: start based on an existing
port, do a massive search & replace for a new port name, ask here when
you run into trouble.  A simple port may go smoothly enough not to
need any help.


> Also gas/cgen.c contains code for fixups and parsing. How does all
> this fit into the big picture of porting binutils to a new cpu target?

It's a necessary detail.  The fewer addressing modes your target supports,
and the simpler the layout of the operands that parametrize any given
address, the simpler (to almost nonexistent) these functions can be.


> How do fixups and frags ??? fit into the API? [...]

They barely do.  Some CGEN operand parsing functions plop fixups into
the assembler, for ultimate disposition as an assembly-time constant,
or emission as a link-time relocation.  Frags are little
partially-filled-in byte strings that are concatenated ultimately
to form object code.  All this is deep GAS/BFD magic, not really cgen
related.


- FChE

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

  reply	other threads:[~2003-10-29 16:50 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-10-29  2:20 Ralph Escherich
2003-10-29  2:48 ` Frank Ch. Eigler
2003-10-29 16:37   ` Ralph Escherich
2003-10-29 16:50     ` Frank Ch. Eigler [this message]
2003-10-30  0:29       ` Ralph Escherich
2003-10-30  1:53         ` Ben Elliston
2003-10-30  5:46           ` Ralph Escherich
2003-10-30  6:43             ` Ben Elliston
2003-10-30 16:47               ` Ralph Escherich
2003-10-31  4:25                 ` Ben Elliston

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20031029165027.GA30779@redhat.com \
    --to=fche@redhat.com \
    --cc=cgen@sources.redhat.com \
    --cc=esche@mobilesmartsinc.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).