From: Uros Bizjak <ubizjak@gmail.com>
To: GCC Patches <gcc-patches@gcc.gnu.org>
Cc: Rask Ingemann Lambertsen <rask@sygehus.dk>,
Jan Hubicka <jh@suse.cz>,
Richard Kenner <kenner@vlsi1.ultra.nyu.edu>,
rridge@csclub.uwaterloo.ca
Subject: Re: New back end ia16: 16-bit Intel x86
Date: Mon, 06 Aug 2007 14:23:00 -0000 [thread overview]
Message-ID: <46B72E64.6070007@gmail.com> (raw)
Hello!
> On Wed, Aug 01, 2007 at 08:47:25AM -0400, Richard Kenner wrote:
> > > Could you give an outline of the benefits of merging it with the i386 port?
> >
> > It's a subset of the registers and basically the same instruction set.
> > It has exactly the same relationship to the i386 port as the i386 port
> > has to the x86_64 port and that's merged.
>
> What I mean when I ask you to mention benefits of merging ia16 into i386
> is things like
>
> - will it make the compiler easier to maintain?
> - will it make the compiler run faster?
> - will it make the compiler use less memory?
> - will it make the compiler produce better code?
> - will it make the compiler easier to use?
>
> but feel free to add anything else that comes to your mind.
>
IMO, point 1 outweighs all other points. The 16bit port is not something
I'd consider heavily used port, so my main concern here would be a
possible bitrot of the contributed code. To avoid this, I think that as
much as possible code should be shared between much tested i386 and
ix86_16 parts. This way, all improvements to i386 backend would
automatically be available to ix86_16 backend. And since quite some
people look into i386 code, much more eyeballs will stare at your code
too, surely much more than if your code would be hidden in some obscure
directory. Please also remember that quite some of your
ideas/improvements based on your (not even released) backend were added
to generic i386 backend, so both backends would benefit from code share.
And considering the fact that every year processing power and memory
(almost) doubles, I wouldn't care too much about the speed and memory
consumption in this particular case as it is far less important than
point 1, 4 and perhaps 5.
As an example, existing MIPS backend covers all targets from one code
base, ranging from embedded 16bit to 64bit targets.
If you choose this approach, I can help you to factor out common code to
merge both backends.
Thanks for this great contribution,
Uros.
next reply other threads:[~2007-08-06 14:23 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-06 14:23 Uros Bizjak [this message]
2007-08-07 1:29 ` Rask Ingemann Lambertsen
2007-08-07 17:37 ` Daniel Jacobowitz
2007-08-07 20:03 ` Uros Bizjak
2007-08-08 12:21 ` Jan Hubicka
2007-08-08 17:30 ` Mark Mitchell
2007-08-08 23:22 ` Richard Kenner
2007-08-08 18:52 ` Rask Ingemann Lambertsen
2007-08-08 20:24 ` Michael Matz
2007-08-08 20:59 ` H.J. Lu
2007-08-08 22:46 ` DJ Delorie
2007-08-09 9:33 ` Jan Hubicka
2007-08-09 14:01 ` Rask Ingemann Lambertsen
2007-08-09 15:43 ` DJ Delorie
2007-08-08 15:28 ` Rask Ingemann Lambertsen
2007-08-17 22:38 ` H. Peter Anvin
2007-08-18 2:34 ` Rask Ingemann Lambertsen
2007-08-18 5:33 ` H. Peter Anvin
2007-08-18 17:36 ` Rask Ingemann Lambertsen
2007-08-18 17:50 ` H. Peter Anvin
2007-08-18 20:39 ` Rask Ingemann Lambertsen
2007-08-19 2:11 ` H. Peter Anvin
2007-08-19 12:25 ` Rask Ingemann Lambertsen
2007-08-19 20:07 ` H. Peter Anvin
2007-08-21 8:48 ` H. Peter Anvin
2007-08-21 14:35 ` Rask Ingemann Lambertsen
2007-08-21 17:46 ` H. Peter Anvin
2007-08-21 18:56 ` Real-mode i386 back end (Was: New back end ia16: 16-bit Intel x86) Rask Ingemann Lambertsen
2007-08-19 7:29 ` New back end ia16: 16-bit Intel x86 H. Peter Anvin
2007-08-19 10:56 ` Rask Ingemann Lambertsen
2007-08-19 21:40 ` H. Peter Anvin
-- strict thread matches above, loose matches on Subject: below --
2007-08-19 19:58 Ross Ridge
2007-08-19 16:11 Ross Ridge
2007-08-19 17:36 ` Rask Ingemann Lambertsen
2007-08-18 20:46 Ross Ridge
2007-08-19 16:20 ` Rask Ingemann Lambertsen
2007-08-02 20:15 Ross Ridge
2007-08-01 19:25 Ross Ridge
2007-08-01 22:57 ` Rask Ingemann Lambertsen
[not found] <20070801153758.ACBB974253@caffeine.csclub.uwaterloo.ca.suse.lists.egcs-patches>
2007-08-01 17:44 ` Andi Kleen
2007-08-01 15:38 Ross Ridge
2007-08-01 17:59 ` Rask Ingemann Lambertsen
2007-07-31 18:06 Ross Ridge
2007-08-01 0:34 ` Rask Ingemann Lambertsen
2007-08-01 9:53 ` Richard Kenner
2007-08-01 12:33 ` Rask Ingemann Lambertsen
2007-08-01 12:44 ` Richard Kenner
2007-08-01 13:41 ` Rask Ingemann Lambertsen
2007-08-01 13:52 ` Richard Kenner
2007-08-01 10:38 ` Jan Hubicka
2007-08-01 17:30 ` Rask Ingemann Lambertsen
2007-07-31 15:24 Ross Ridge
2007-07-31 17:44 ` Michael Matz
2007-07-31 0:50 Ross Ridge
2007-07-31 8:54 ` Tristan Gingold
2007-07-31 13:46 ` Rask Ingemann Lambertsen
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=46B72E64.6070007@gmail.com \
--to=ubizjak@gmail.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=jh@suse.cz \
--cc=kenner@vlsi1.ultra.nyu.edu \
--cc=rask@sygehus.dk \
--cc=rridge@csclub.uwaterloo.ca \
/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).