<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Davis Johnson wrote:
<blockquote cite="mid47969707.30203@frizzen.com" type="cite">
  <pre wrap="">Bailey, Scott wrote:
  </pre>
  <blockquote type="cite">
    <pre wrap="">... it is possible to compile using gcc with the "-fwhole-program
--combine" flags -- on paper, this presents the compiler with additional
opportunities for optimization.

    </pre>
  </blockquote>
  <pre wrap=""><!---->If the compiler is smart enough to do this, might it be smart enough to 
inline without being asked? I really need to read the compiler 
documentation again.

  </pre>
</blockquote>
-O3 (and higher, although -O3 seems to be as far as it goes, yet) does
include --finline-functions. From
<a class="moz-txt-link-freetext" href="http://gcc.gnu.org/onlinedocs/gcc-3.3.6/gcc/Optimize-Options.html#Optimize-Options">http://gcc.gnu.org/onlinedocs/gcc-3.3.6/gcc/Optimize-Options.html#Optimize-Options</a>
:<br>
<br>
<blockquote>
  <dl>
    <dt><code>-finline-functions</code></dt>
    <dd><a name="index-finline_002dfunctions-361"></a>Integrate all
simple functions into their callers. The compiler
heuristically decides which functions are simple enough to be worth
integrating in this way.
      <p>If all calls to a given function are integrated, and the
function is
declared <code>static</code>, then the function is normally not output
as
assembler code in its own right. </p>
      <p>Enabled at level <samp><span class="option">-O3</span></samp>.</p>
    </dd>
  </dl>
</blockquote>
<dl>
  <dt>Memory management (relocation and protection) on Interdata
machines is fairly simple. My guess is that it is simple enough to be
considered "simple functions" by the compiler. This probably explains
the mystery. This may not be true when emulating a machine with more
complex memory management.<br>
  </dt>
</dl>
<br>
</body>
</html>