1@c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
| 1@c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
|
2@c 1999, 2000, 2001 Free Software Foundation, Inc.
| 2@c 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
3@c This is part of the GCC manual. 4@c For copying conditions, see the file gcc.texi. 5 6@node Portability 7@chapter GCC and Portability 8@cindex portability 9@cindex GCC and portability 10
| 3@c This is part of the GCC manual. 4@c For copying conditions, see the file gcc.texi. 5 6@node Portability 7@chapter GCC and Portability 8@cindex portability 9@cindex GCC and portability 10
|
11The main goal of GCC was to make a good, fast compiler for machines in 12the class that the GNU system aims to run on: 32-bit machines that address 138-bit bytes and have several general registers. Elegance, theoretical 14power and simplicity are only secondary.
| 11GCC itself aims to be portable to any machine where @code{int} is at least 12a 32-bit type. It aims to target machines with a flat (non-segmented) byte 13addressed data address space (the code address space can be separate). 14Target ABIs may have 8, 16, 32 or 64-bit @code{int} type. @code{char} 15can be wider than 8 bits.
|
15 16GCC gets most of the information about the target machine from a machine 17description which gives an algebraic formula for each of the machine's 18instructions. This is a very clean way to describe the target. But when 19the compiler needs information that is difficult to express in this 20fashion, I have not hesitated to define an ad-hoc parameter to the machine 21description. The purpose of portability is to reduce the total work needed 22on the compiler; it was not of interest for its own sake.
--- 16 unchanged lines hidden --- | 16 17GCC gets most of the information about the target machine from a machine 18description which gives an algebraic formula for each of the machine's 19instructions. This is a very clean way to describe the target. But when 20the compiler needs information that is difficult to express in this 21fashion, I have not hesitated to define an ad-hoc parameter to the machine 22description. The purpose of portability is to reduce the total work needed 23on the compiler; it was not of interest for its own sake.
--- 16 unchanged lines hidden --- |