Sophie

Sophie

distrib > Mandriva > 2010.1 > x86_64 > media > main-backports > by-pkgid > 97e550cf5e93b7f399a057af6f6e9b60 > files > 573

llvm-2.7-2mdv2010.1.x86_64.rpm

<?xml version="1.0" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>lli</title>
<link rel="stylesheet" href="manpage.css" type="text/css" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link rev="made" href="mailto:root@localhost" />
</head>

<body>


<!-- INDEX BEGIN -->
<div name="index">
<p><a name="__index__"></a></p>
<!--

<ul>

	<li><a href="#name">NAME</a></li>
	<li><a href="#synopsis">SYNOPSIS</a></li>
	<li><a href="#description">DESCRIPTION</a></li>
	<li><a href="#general_options">GENERAL OPTIONS</a></li>
	<li><a href="#target_options">TARGET OPTIONS</a></li>
	<li><a href="#floating_point_options">FLOATING POINT OPTIONS</a></li>
	<li><a href="#code_generation_options">CODE GENERATION OPTIONS</a></li>
	<li><a href="#exit_status">EXIT STATUS</a></li>
	<li><a href="#see_also">SEE ALSO</a></li>
	<li><a href="#author">AUTHOR</a></li>
</ul>

-->


</div>
<!-- INDEX END -->

<p>
</p>
<hr />
<h1><a name="name">NAME</a></h1>
<p>lli - directly execute programs from LLVM bitcode</p>
<p>
</p>
<hr />
<h1><a name="synopsis">SYNOPSIS</a></h1>
<p><strong>lli</strong> [<em>options</em>] [<em>filename</em>] [<em>program args</em>]</p>
<p>
</p>
<hr />
<h1><a name="description">DESCRIPTION</a></h1>
<p><strong>lli</strong> directly executes programs in LLVM bitcode format.  It takes a program
in LLVM bitcode format and executes it using a just-in-time compiler, if one is
available for the current architecture, or an interpreter.  <strong>lli</strong> takes all of
the same code generator options as <a href="././llc.html">llc</a>, but they are only effective when
<strong>lli</strong> is using the just-in-time compiler.</p>
<p>If <em>filename</em> is not specified, then <strong>lli</strong> reads the LLVM bitcode for the
program from standard input.</p>
<p>The optional <em>args</em> specified on the command line are passed to the program as
arguments.</p>
<p>
</p>
<hr />
<h1><a name="general_options">GENERAL OPTIONS</a></h1>
<dl>
<dt><strong><a name="fake_argv0_executable" class="item"><strong>-fake-argv0</strong>=<em>executable</em></a></strong></dt>

<dd>
<p>Override the <code>argv[0]</code> value passed into the executing program.</p>
</dd>
<dt><strong><a name="force_interpreter_false_true" class="item"><strong>-force-interpreter</strong>=<em>{false,true}</em></a></strong></dt>

<dd>
<p>If set to true, use the interpreter even if a just-in-time compiler is available
for this architecture. Defaults to false.</p>
</dd>
<dt><strong><a name="help" class="item"><strong>-help</strong></a></strong></dt>

<dd>
<p>Print a summary of command line options.</p>
</dd>
<dt><strong><a name="load_puginfilename" class="item"><strong>-load</strong>=<em>puginfilename</em></a></strong></dt>

<dd>
<p>Causes <strong>lli</strong> to load the plugin (shared object) named <em>pluginfilename</em> and use
it for optimization.</p>
</dd>
<dt><strong><a name="stats" class="item"><strong>-stats</strong></a></strong></dt>

<dd>
<p>Print statistics from the code-generation passes. This is only meaningful for
the just-in-time compiler, at present.</p>
</dd>
<dt><strong><a name="time_passes" class="item"><strong>-time-passes</strong></a></strong></dt>

<dd>
<p>Record the amount of time needed for each code-generation pass and print it to
standard error.</p>
</dd>
<dt><strong><a name="version" class="item"><strong>-version</strong></a></strong></dt>

<dd>
<p>Print out the version of <strong>lli</strong> and exit without doing anything else.</p>
</dd>
</dl>
<p>
</p>
<hr />
<h1><a name="target_options">TARGET OPTIONS</a></h1>
<dl>
<dt><strong><a name="mtriple_target_triple" class="item"><strong>-mtriple</strong>=<em>target triple</em></a></strong></dt>

<dd>
<p>Override the target triple specified in the input bitcode file with the 
specified string.  This may result in a crash if you pick an
architecture which is not compatible with the current system.</p>
</dd>
<dt><strong><a name="march_arch" class="item"><strong>-march</strong>=<em>arch</em></a></strong></dt>

<dd>
<p>Specify the architecture for which to generate assembly, overriding the target
encoded in the bitcode file.  See the output of <strong>llc -help</strong> for a list of
valid architectures.  By default this is inferred from the target triple or
autodetected to the current architecture.</p>
</dd>
<dt><strong><a name="mcpu_cpuname" class="item"><strong>-mcpu</strong>=<em>cpuname</em></a></strong></dt>

<dd>
<p>Specify a specific chip in the current architecture to generate code for.
By default this is inferred from the target triple and autodetected to 
the current architecture.  For a list of available CPUs, use:
<strong>llvm-as &lt; /dev/null | llc -march=xyz -mcpu=help</strong></p>
</dd>
<dt><strong><a name="mattr_a1_a2_a3" class="item"><strong>-mattr</strong>=<em>a1,+a2,-a3,...</em></a></strong></dt>

<dd>
<p>Override or control specific attributes of the target, such as whether SIMD
operations are enabled or not.  The default set of attributes is set by the
current CPU.  For a list of available attributes, use:
<strong>llvm-as &lt; /dev/null | llc -march=xyz -mattr=help</strong></p>
</dd>
</dl>
<p>
</p>
<hr />
<h1><a name="floating_point_options">FLOATING POINT OPTIONS</a></h1>
<dl>
<dt><strong><a name="disable_excess_fp_precision" class="item"><strong>-disable-excess-fp-precision</strong></a></strong></dt>

<dd>
<p>Disable optimizations that may increase floating point precision.</p>
</dd>
<dt><strong><a name="enable_finite_only_fp_math" class="item"><strong>-enable-finite-only-fp-math</strong></a></strong></dt>

<dd>
<p>Enable optimizations that assumes only finite floating point math. That is,
there is no NAN or Inf values.</p>
</dd>
<dt><strong><a name="enable_unsafe_fp_math" class="item"><strong>-enable-unsafe-fp-math</strong></a></strong></dt>

<dd>
<p>Causes <strong>lli</strong> to enable optimizations that may decrease floating point
precision.</p>
</dd>
<dt><strong><a name="soft_float" class="item"><strong>-soft-float</strong></a></strong></dt>

<dd>
<p>Causes <strong>lli</strong> to generate software floating point library calls instead of
equivalent hardware instructions.</p>
</dd>
</dl>
<p>
</p>
<hr />
<h1><a name="code_generation_options">CODE GENERATION OPTIONS</a></h1>
<dl>
<dt><strong><a name="code_model_model" class="item"><strong>-code-model</strong>=<em>model</em></a></strong></dt>

<dd>
<p>Choose the code model from:</p>
<pre>
    default: Target default code model
    small: Small code model
    kernel: Kernel code model
    medium: Medium code model
    large: Large code model</pre>
</dd>
<dt><strong><a name="disable_post_ra_scheduler" class="item"><strong>-disable-post-RA-scheduler</strong></a></strong></dt>

<dd>
<p>Disable scheduling after register allocation.</p>
</dd>
<dt><strong><a name="disable_spill_fusing" class="item"><strong>-disable-spill-fusing</strong></a></strong></dt>

<dd>
<p>Disable fusing of spill code into instructions.</p>
</dd>
<dt><strong><a name="enable_correct_eh_support" class="item"><strong>-enable-correct-eh-support</strong></a></strong></dt>

<dd>
<p>Make the -lowerinvoke pass insert expensive, but correct, EH code.</p>
</dd>
<dt><strong><a name="enable_eh" class="item"><strong>-enable-eh</strong></a></strong></dt>

<dd>
<p>Exception handling should be emitted.</p>
</dd>
<dt><strong><a name="join_liveintervals" class="item"><strong>-join-liveintervals</strong></a></strong></dt>

<dd>
<p>Coalesce copies (default=true).</p>
</dd>
<dt><strong><a name="nozero_initialized_in_bss_don_t_place_zero_initialized_symbols_into_the_bss_section" class="item"><strong>-nozero-initialized-in-bss</strong>
Don't place zero-initialized symbols into the BSS section.</a></strong></dt>

<dt><strong><a name="pre_ra_sched_scheduler" class="item"><strong>-pre-RA-sched</strong>=<em>scheduler</em></a></strong></dt>

<dd>
<p>Instruction schedulers available (before register allocation):</p>
<pre>
    =default: Best scheduler for the target 
    =none: No scheduling: breadth first sequencing 
    =simple: Simple two pass scheduling: minimize critical path and maximize processor utilization 
    =simple-noitin: Simple two pass scheduling: Same as simple except using generic latency 
    =list-burr: Bottom-up register reduction list scheduling 
    =list-tdrr: Top-down register reduction list scheduling 
    =list-td: Top-down list scheduler -print-machineinstrs - Print generated machine code</pre>
</dd>
<dt><strong><a name="regalloc_allocator" class="item"><strong>-regalloc</strong>=<em>allocator</em></a></strong></dt>

<dd>
<p>Register allocator to use (default=linearscan)</p>
<pre>
    =bigblock: Big-block register allocator 
    =linearscan: linear scan register allocator =local -   local register allocator 
    =simple: simple register allocator</pre>
</dd>
<dt><strong><a name="relocation_model_model" class="item"><strong>-relocation-model</strong>=<em>model</em></a></strong></dt>

<dd>
<p>Choose relocation model from:</p>
<pre>
    =default: Target default relocation model 
    =static: Non-relocatable code =pic -   Fully relocatable, position independent code 
    =dynamic-no-pic: Relocatable external references, non-relocatable code</pre>
</dd>
<dt><strong><a name="spiller" class="item"><strong>-spiller</strong></a></strong></dt>

<dd>
<p>Spiller to use (default=local)</p>
<pre>
    =simple: simple spiller 
    =local: local spiller</pre>
</dd>
<dt><strong><a name="x86_asm_syntax_syntax" class="item"><strong>-x86-asm-syntax</strong>=<em>syntax</em></a></strong></dt>

<dd>
<p>Choose style of code to emit from X86 backend:</p>
<pre>
    =att: Emit AT&amp;T-style assembly 
    =intel: Emit Intel-style assembly</pre>
</dd>
</dl>
<p>
</p>
<hr />
<h1><a name="exit_status">EXIT STATUS</a></h1>
<p>If <strong>lli</strong> fails to load the program, it will exit with an exit code of 1.
Otherwise, it will return the exit code of the program it executes.</p>
<p>
</p>
<hr />
<h1><a name="see_also">SEE ALSO</a></h1>
<p><a href="././llc.html">llc</a></p>
<p>
</p>
<hr />
<h1><a name="author">AUTHOR</a></h1>
<p>Maintained by the LLVM Team (<a href="http://llvm.org">http://llvm.org</a>).</p>

</body>

</html>