This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: New back end ia16: 16-bit Intel x86


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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]