<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Copyright (C) 1988-2015 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being "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. -->
<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
<head>
<title>GNU Compiler Collection (GCC) Internals: GENERIC</title>

<meta name="description" content="GNU Compiler Collection (GCC) Internals: GENERIC">
<meta name="keywords" content="GNU Compiler Collection (GCC) Internals: GENERIC">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="Option-Index.html#Option-Index" rel="index" title="Option Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="index.html#Top" rel="up" title="Top">
<link href="Deficiencies.html#Deficiencies" rel="next" title="Deficiencies">
<link href="Dump-examples.html#Dump-examples" rel="prev" title="Dump examples">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>


</head>

<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="GENERIC"></a>
<div class="header">
<p>
Next: <a href="GIMPLE.html#GIMPLE" accesskey="n" rel="next">GIMPLE</a>, Previous: <a href="Passes.html#Passes" accesskey="p" rel="prev">Passes</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Option-Index.html#Option-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="GENERIC-1"></a>
<h2 class="chapter">10 GENERIC</h2>
<a name="index-GENERIC-1"></a>

<p>The purpose of GENERIC is simply to provide a
language-independent way of representing an entire function in
trees.  To this end, it was necessary to add a few new tree codes
to the back end, but almost everything was already there.  If you
can express it with the codes in <code>gcc/tree.def</code>, it&rsquo;s
GENERIC.
</p>
<p>Early on, there was a great deal of debate about how to think
about statements in a tree IL.  In GENERIC, a statement is
defined as any expression whose value, if any, is ignored.  A
statement will always have <code>TREE_SIDE_EFFECTS</code> set (or it
will be discarded), but a non-statement expression may also have
side effects.  A <code>CALL_EXPR</code>, for instance.
</p>
<p>It would be possible for some local optimizations to work on the
GENERIC form of a function; indeed, the adapted tree inliner
works fine on GENERIC, but the current compiler performs inlining
after lowering to GIMPLE (a restricted form described in the next
section). Indeed, currently the frontends perform this lowering
before handing off to <code>tree_rest_of_compilation</code>, but this
seems inelegant.
</p>
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">&bull; <a href="Deficiencies.html#Deficiencies" accesskey="1">Deficiencies</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Topics net yet covered in this document.
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Tree-overview.html#Tree-overview" accesskey="2">Tree overview</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">All about <code>tree</code>s.
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Types.html#Types" accesskey="3">Types</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Fundamental and aggregate types.
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Declarations.html#Declarations" accesskey="4">Declarations</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Type declarations and variables.
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Attributes.html#Attributes" accesskey="5">Attributes</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Declaration and type attributes.
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Expression-trees.html#Expression-trees" accesskey="6">Expressions</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Operating on data.
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Statements.html#Statements" accesskey="7">Statements</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Control flow and related trees.
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Functions.html#Functions" accesskey="8">Functions</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Function bodies, linkage, and other aspects.
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Language_002ddependent-trees.html#Language_002ddependent-trees" accesskey="9">Language-dependent trees</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Topics and trees specific to language front ends.
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="C-and-C_002b_002b-Trees.html#C-and-C_002b_002b-Trees">C and C++ Trees</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Trees specific to C and C++.
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Java-Trees.html#Java-Trees">Java Trees</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Trees specific to Java.
</td></tr>
</table>


<hr>
<div class="header">
<p>
Next: <a href="GIMPLE.html#GIMPLE" accesskey="n" rel="next">GIMPLE</a>, Previous: <a href="Passes.html#Passes" accesskey="p" rel="prev">Passes</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Option-Index.html#Option-Index" title="Index" rel="index">Index</a>]</p>
</div>



</body>
</html>
