diff options
author | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-12-17 19:20:05 +0000 |
---|---|---|
committer | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-12-17 19:20:05 +0000 |
commit | f5b3605162e7cf7807500e78f989b0ecf169cd28 (patch) | |
tree | 6ff3b4ab121f5dc4cfb32c48955165d70582a95b /gcc/doc/gccint.texi | |
parent | 63b59447717bd7e40298fd6d0bccca1bbc00e379 (diff) | |
download | gcc-f5b3605162e7cf7807500e78f989b0ecf169cd28.tar.gz |
Separate user and internals manuals.
* Makefile.in (info, $(docdir)/gcc.info, dvi, gcc.dvi): Update
dependencies.
($(docdir)/gccint.info, gccint.dvi): New targets.
(maintainer-clean, install-info, uninstall): Update.
* doc/.cvsignore: Add gccint.info*.
* doc/include/gcc-common.texi: New file.
* doc/gcc.texi: Use it. Adjust to be a user-only manual. Put
copyright notice in a macro. Don't include ISBN unless FSFPRINT
is defined.
* doc/gccint.texi: New file.
* doc/configfiles.texi, doc/extend.texi, doc/invoke.texi,
doc/md.texi, doc/passes.texi, doc/tm.texi, doc/trouble.texi:
Update for separate user and internals manuals.
f:
* g77.texi, invoke.texi: Update links to GCC manual.
java:
* gcj.texi: Update link to GCC manual.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48119 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/doc/gccint.texi')
-rw-r--r-- | gcc/doc/gccint.texi | 224 |
1 files changed, 224 insertions, 0 deletions
diff --git a/gcc/doc/gccint.texi b/gcc/doc/gccint.texi new file mode 100644 index 00000000000..7f6f4b99eed --- /dev/null +++ b/gcc/doc/gccint.texi @@ -0,0 +1,224 @@ +\input texinfo @c -*-texinfo-*- +@c %**start of header +@setfilename gccint.info +@c INTERNALS is used by md.texi to determine whether to include the +@c whole of that file, in the internals manual, or only the part +@c dealing with constraints, in the user manual. +@set INTERNALS + +@c See miscellaneous notes in gcc.texi on checks/things to do. + +@include gcc-common.texi + +@settitle GNU Compiler Collection (GCC) Internals + +@c Create a separate index for command line options. +@defcodeindex op +@c Merge the standard indexes into a single one. +@syncodeindex fn cp +@syncodeindex vr cp +@syncodeindex ky cp +@syncodeindex pg cp +@syncodeindex tp cp + +@c %**end of header + +@c Use with @@smallbook. + +@c Cause even numbered pages to be printed on the left hand side of +@c the page and odd numbered pages to be printed on the right hand +@c side of the page. Using this, you can print on both sides of a +@c sheet of paper and have the text on the same part of the sheet. + +@c The text on right hand pages is pushed towards the right hand +@c margin and the text on left hand pages is pushed toward the left +@c hand margin. +@c (To provide the reverse effect, set bindingoffset to -0.75in.) + +@c @tex +@c \global\bindingoffset=0.75in +@c \global\normaloffset =0.75in +@c @end tex + +@c Change the font used for @def... commands, since the default +@c proportional one used is bad for names starting __. +@tex +\global\setfont\defbf\ttbshape{10}{\magstep1} +@end tex + +@macro copyrightnotice +Copyright @copyright{} 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, +1999, 2000, 2001 Free Software Foundation, Inc. +@end macro +@ifnottex +@dircategory Programming +@direntry +* gccint: (gccint). Internals of the GNU Compiler Collection. +@end direntry +This file documents the internals of the GNU compilers. +@sp 1 +Published by the Free Software Foundation@* +59 Temple Place - Suite 330@* +Boston, MA 02111-1307 USA +@sp 1 +@copyrightnotice{} +@sp 1 +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.1 or +any later version published by the Free Software Foundation; with the +Invariant Sections being ``GNU General Public License'' and ``Funding +Free Software'', the Front-Cover texts being (a) (see below), and with +the Back-Cover Texts being (b) (see below). A copy of the license is +included in the section entitled ``GNU Free Documentation License''. + +(a) The FSF's Front-Cover Text is: + + A GNU Manual + +(b) The FSF's Back-Cover Text is: + + You have freedom to copy and modify this GNU Manual, like GNU + software. Copies published by the Free Software Foundation raise + funds for GNU development. +@end ifnottex + +@setchapternewpage odd +@titlepage +@center @titlefont{GNU Compiler Collection Internals} +@sp 2 +@center Richard M. Stallman +@sp 3 +@center Last updated 7 December 2001 +@sp 1 + +@center for GCC @value{version-GCC} +@page +@vskip 0pt plus 1filll +@copyrightnotice{} +@sp 2 +For GCC Version @value{version-GCC}@* +@sp 1 +Published by the Free Software Foundation @* +59 Temple Place---Suite 330@* +Boston, MA 02111-1307, USA@* +Last printed April, 1998.@* +Printed copies are available for $50 each.@* +@c Update this ISBN when printing a new edition. +@ifset FSFPRINT +ISBN 1-882114-37-X +@end ifset +@sp 1 +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.1 or +any later version published by the Free Software Foundation; with the +Invariant Sections being ``GNU General Public License'', the Front-Cover +texts being (a) (see below), and with the Back-Cover Texts being (b) +(see below). A copy of the license is included in the section entitled +``GNU Free Documentation License''. + +(a) The FSF's Front-Cover Text is: + + A GNU Manual + +(b) The FSF's Back-Cover Text is: + + You have freedom to copy and modify this GNU Manual, like GNU + software. Copies published by the Free Software Foundation raise + funds for GNU development. +@end titlepage +@summarycontents +@contents +@page + +@node Top, Contributing,, (DIR) +@top Introduction +@cindex introduction + +This manual documents the internals of the GNU compilers, including +how to port them to new targets and some information about how to +write front ends for new languages. It corresponds to GCC version +@value{version-GCC}. The use of the GNU compilers is documented in a +separate manual. @xref{Top,, Introduction, gcc, Using the GNU +Compiler Collection (GCC)}. + +@menu +* Contributing:: How to contribute to testing and developing GCC. +* Makefile:: Additional Makefile and configure information. +* Portability:: Goals of GCC's portability features. +* Interface:: Function-call interface of GCC output. +* Passes:: Order of passes, what they do, and what each file is for. +* Trees:: The source representation used by the C and C++ front ends. +* RTL:: The intermediate representation that most passes work on. +* Machine Desc:: How to write machine description instruction patterns. +* Target Macros:: How to write the machine description C macros and functions. +* Config:: Writing the @file{xm-@var{machine}.h} file. +* Fragments:: Writing the @file{t-@var{target}} and @file{x-@var{host}} files. +* Configuration Files:: Files created by running @code{configure}. +* Collect2:: How @code{collect2} works; how it finds @code{ld}. +* Header Dirs:: Understanding the standard header file directories. + +* Funding:: How to help assure funding for free software. +* GNU Project:: The GNU Project and GNU/Linux. + +* Copying:: GNU General Public License says + how you can copy and share GCC. +* GNU Free Documentation License:: How you can copy and share this manual. +* Contributors:: People who have contributed to GCC. + +* Option Index:: Index to command line options. +* Index:: Index of concepts and symbol names. +@end menu + +@include contribute.texi +@include makefile.texi +@include configterms.texi +@include portability.texi +@include interface.texi +@include passes.texi +@include c-tree.texi +@include rtl.texi +@include md.texi +@include tm.texi +@include hostconfig.texi +@include fragments.texi +@include configfiles.texi +@include collect2.texi +@include headerdirs.texi + +@include funding.texi +@include gnu.texi +@include gpl.texi + +@c --------------------------------------------------------------------- +@c GFDL +@c --------------------------------------------------------------------- + +@include fdl.texi + +@include contrib.texi + +@c --------------------------------------------------------------------- +@c Indexes +@c --------------------------------------------------------------------- + +@node Option Index +@unnumbered Option Index + +GCC's command line options are indexed here without any initial @samp{-} +or @samp{--}. Where an option has both positive and negative forms +(such as @option{-f@var{option}} and @option{-fno-@var{option}}), +relevant entries in the manual are indexed under the most appropriate +form; it may sometimes be useful to look up both forms. + +@printindex op + +@node Index +@unnumbered Index + +@printindex cp + +@c --------------------------------------------------------------------- +@c Epilogue +@c --------------------------------------------------------------------- + +@bye |