public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
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.


             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).