mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-12 17:32:19 +00:00
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74485 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
e8e4d588c3
commit
e25b845b43
@ -37,6 +37,7 @@ The ReST source lives in the directory 'tools/llvmc/doc'. -->
|
|||||||
<li><a class="reference internal" href="#hooks-and-environment-variables" id="id17">Hooks and environment variables</a></li>
|
<li><a class="reference internal" href="#hooks-and-environment-variables" id="id17">Hooks and environment variables</a></li>
|
||||||
<li><a class="reference internal" href="#how-plugins-are-loaded" id="id18">How plugins are loaded</a></li>
|
<li><a class="reference internal" href="#how-plugins-are-loaded" id="id18">How plugins are loaded</a></li>
|
||||||
<li><a class="reference internal" href="#debugging" id="id19">Debugging</a></li>
|
<li><a class="reference internal" href="#debugging" id="id19">Debugging</a></li>
|
||||||
|
<li><a class="reference internal" href="#conditioning-on-the-executable-name" id="id20">Conditioning on the executable name</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
@ -94,9 +95,8 @@ $ llvmc --linker=c++ hello.o
|
|||||||
$ ./a.out
|
$ ./a.out
|
||||||
hello
|
hello
|
||||||
</pre>
|
</pre>
|
||||||
<p>By default, LLVMC uses <tt class="docutils literal"><span class="pre">llvm-gcc</span></tt> to compile the source code. It is
|
<p>By default, LLVMC uses <tt class="docutils literal"><span class="pre">llvm-gcc</span></tt> to compile the source code. It is also
|
||||||
also possible to choose the work-in-progress <tt class="docutils literal"><span class="pre">clang</span></tt> compiler with
|
possible to choose the <tt class="docutils literal"><span class="pre">clang</span></tt> compiler with the <tt class="docutils literal"><span class="pre">-clang</span></tt> option.</p>
|
||||||
the <tt class="docutils literal"><span class="pre">-clang</span></tt> option.</p>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="section" id="predefined-options">
|
<div class="section" id="predefined-options">
|
||||||
<h1><a class="toc-backref" href="#id6">Predefined options</a></h1>
|
<h1><a class="toc-backref" href="#id6">Predefined options</a></h1>
|
||||||
@ -633,6 +633,27 @@ be performed at compile-time because the plugins can load code
|
|||||||
dynamically. When invoked with <tt class="docutils literal"><span class="pre">--check-graph</span></tt>, <tt class="docutils literal"><span class="pre">llvmc</span></tt> doesn't
|
dynamically. When invoked with <tt class="docutils literal"><span class="pre">--check-graph</span></tt>, <tt class="docutils literal"><span class="pre">llvmc</span></tt> doesn't
|
||||||
perform any compilation tasks and returns the number of encountered
|
perform any compilation tasks and returns the number of encountered
|
||||||
errors as its status code.</p>
|
errors as its status code.</p>
|
||||||
|
</div>
|
||||||
|
<div class="section" id="conditioning-on-the-executable-name">
|
||||||
|
<h2><a class="toc-backref" href="#id20">Conditioning on the executable name</a></h2>
|
||||||
|
<p>For now, the executable name (the value passed to the driver in <tt class="docutils literal"><span class="pre">argv[0]</span></tt>) is
|
||||||
|
accessible only in the C++ code (i.e. hooks). Use the following code:</p>
|
||||||
|
<pre class="literal-block">
|
||||||
|
namespace llvmc {
|
||||||
|
extern const char* ProgramName;
|
||||||
|
}
|
||||||
|
|
||||||
|
std::string MyHook() {
|
||||||
|
//...
|
||||||
|
if (strcmp(ProgramName, "mydriver") == 0) {
|
||||||
|
//...
|
||||||
|
|
||||||
|
}
|
||||||
|
</pre>
|
||||||
|
<p>In general, you're encouraged not to make the behaviour dependent on the
|
||||||
|
executable file name, and use command-line switches instead. See for example how
|
||||||
|
the <tt class="docutils literal"><span class="pre">Base</span></tt> plugin behaves when it needs to choose the correct linker options
|
||||||
|
(think <tt class="docutils literal"><span class="pre">g++</span></tt> vs. <tt class="docutils literal"><span class="pre">gcc</span></tt>).</p>
|
||||||
<hr />
|
<hr />
|
||||||
<address>
|
<address>
|
||||||
<a href="http://jigsaw.w3.org/css-validator/check/referer">
|
<a href="http://jigsaw.w3.org/css-validator/check/referer">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user