This is the mail archive of the
mailing list for the GCC project.
Re: New back end ia16: 16-bit Intel x86
- From: Michael Matz <matz at suse dot de>
- To: Ross Ridge <rridge at csclub dot uwaterloo dot ca>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Tue, 31 Jul 2007 18:43:51 +0200 (CEST)
- Subject: Re: New back end ia16: 16-bit Intel x86
- References: <20070731151218.3A2B2743FB@caffeine.csclub.uwaterloo.ca>
On Tue, 31 Jul 2007, Ross Ridge wrote:
> > (so "i8086" is out as well).
> Well, if your port is going to be strictly limitted to targetting only
> 16-bit IA-32 processors then "i80x86" would probably be most descriptive
> and accurate name for the target. However, I don't see why it should be
> limitted to just 16-bit processors.
> >I'm sure that dashes in the back end name will be rejected. Consider
> >the s/x86-64/x86_64/h mess.
> I did say "something like i386-16" so "i386_16", "ia32rm16" or anything
> that indicates that IA-32 processors in 16-bit mode are being targetted.
Blaeh, that's all ugly. I actually think that ia16 is a reasonable name
for this ISA, even though Rask just made it up. It's generating code for
the 16 bit mode (which works on all the intel CPUs) which for all
practical measures is a different CPU architecture than the same chip in
32bit or 64bit mode (it just happens to share some mnemonics and insn
encodings). At least to me the name ia16 (which never occured to me
before Rask) immediately made clear what this backend is about. True,
i8086 would too, but that wouldn't be completely correct as the i80286 can
also work in that architecture mode. ia32rm16 could be understood too,
true, but given the non-existence of the term ia-32 before IA-64 came up
would be at least as dubious as ia16 but longer and uglier.
Basically Rask needs a name for that ISA. A chip name is not really
appropriate (that has to be left for tuning purposes). IA-32 also isn't
appropriate (even if Intel documents the < 386 CPUs to also be included in
that name, as name for the ISA this doesn't make sense, only as
differentiator to IA-64). The most logical choice for that old ISA seems
to be IA-16 IMO.