9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: forsyth@caldo.demon.co.uk
To: 9fans@cse.psu.edu
Subject: Re: [9fans] p9/linux/fbsd compiler shootout
Date: Tue, 26 Feb 2002 11:15:32 +0000	[thread overview]
Message-ID: <20020226105950.D68B719A05@mail.cse.psu.edu> (raw)

>>GCC had to develop a whole special extra codegen unit to manage to do
>>fp on a 386 anything approaching well, and without something like
>>that, it's pretty painful.

the code generators are all custom, although the RISC ones are similar
(and closely related), so that aspect of the peculiar floating-point
isn't troublesome (which isn't to say it tries anything too fancy).
the 680x0 and x86 compilers have a lot of custom code.

the plan 9 c compilers aren't like pcc, which did a simple essentially
one-pass translation (to assembler) with no optimisation.
the compiler does function-level register allocation, addressing mode selection
and broad instruction selection, with local code improvements.
unusually, detailed (machine-level) instruction selection is done by
the linker (which is in a good position to do ARM/Thumb linkage, literal pools,
span-dependent instructions, instruction scheduling, etc.).  only the linker knows
the binary formats of instructions of a given processor or processor variant.
some instructions issued by the compiler don't correspond to real instruction variants.
the assembler is just a front-end to the linker.  the compiler doesn't use the assembler.


             reply	other threads:[~2002-02-26 11:15 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-02-26 11:15 forsyth [this message]
  -- strict thread matches above, loose matches on Subject: below --
2002-02-26 15:02 andrey mirtchovski
2002-02-26 16:02 ` Wilhelm B. Kloke
2002-02-26 18:00   ` splite
2002-02-26 16:04 ` Matt H
2002-03-04 10:04 ` Gaute B Strokkenes
2002-02-26 14:20 rob pike
2002-02-26 16:07 ` Sean Quinlan
2002-02-26 14:18 rob pike
2002-02-26  3:10 rob pike
2002-02-26 10:26 ` Thomas Bushnell, BSG
2002-02-26  3:05 andrey mirtchovski
2002-02-26 10:27 ` Thomas Bushnell, BSG
2002-02-26 10:27 ` Thomas Bushnell, BSG

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=20020226105950.D68B719A05@mail.cse.psu.edu \
    --to=forsyth@caldo.demon.co.uk \
    --cc=9fans@cse.psu.edu \
    /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 NNTP newsgroup(s).