This is the mail archive of the gcc@gcc.gnu.org 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: 16-bit real-mode code


> I ponder about writing a "i386 16bit realmode" gcc backend as my master
> thesis - which would be usefull for generating 16-bit bios code needed
> by the virtual machine developed at my university.

It's been done a couple of times already, first by me, and later my
code was extended by a couple of other people.  Don't know if you want
to start from scratch "on principle" though, otherwise search the mail
archives.

> Having never programmed any compiler-related stuff and having a
> strict deadline (after 6 months) i would appreciate some commments
> about the complexity of such a venture.

It's not that bad, at least pointers are a reasonable size
(int-sized).  IMHO the trick to setting up the registers is to assume
a bank of one-byte registers and use HARD_REGNO_NREGS to build up the
larger registers, rather than trying to use subregs to access parts of
larger registers.  Arrange the registers such that DX:AX pairs are
adjacent too.


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