[LLVMdev] Proper arguments for -march?
H. Johnson
misc at faradayco.com
Fri Nov 14 09:36:31 PST 2008
CMake was set as follows:
LLVM_TARGETS_TO_BUILD CBackend;PIC16;X86
Here's what llc returned:
OVERVIEW: llvm system compiler
USAGE: llc [options] <input bitcode>
OPTIONS:
-asm-verbose - Add comments to directives.
-code-model - Choose code model
=default - Target default code model
=small - Small code model
=kernel - Kernel code model
=medium - Medium code model
=large - Large code model
-disable-excess-fp-precision - Disable optimizations that may
increase FP precision
-disable-fp-elim - Disable frame pointer
elimination optimization
-disable-post-RA-scheduler - Disable scheduling after
register allocation
-enable-correct-eh-support - Make the -lowerinvoke pass
insert expensive, but correct, EH code
-enable-eh - Emit DWARF exception handling
(default if target supports)
-enable-finite-only-fp-math - Enable optimizations that
assumes non- NaNs / +-Infs
-enable-unsafe-fp-math - Enable optimizations that may
decrease FP precision
-f - Overwrite output files
-fast - Generate code quickly,
potentially sacrificing code quality
-filetype - Choose a file type (not all
types are supported by all targets):
=asm - Emit an assembly ('.s') file
=obj - Emit a native object ('.o')
file [experimental]
=dynlib - Emit a native dynamic library
('.so') file [experimental]
-help - Display available options
(--help-hidden for more)
-join-liveintervals - Coalesce copies (default=true)
-limit-float-precision=<uint> - Generate low-precision inline
sequences for some float libcalls
-load=<pluginfilename> - Load the specified plugin
-march - Architecture to generate code for:
-mattr=<a1,+a2,-a3,...> - Target specific attributes
(-mattr=help for details)
-mcpu=<cpu-name> - Target a specific cpu type
(-mcpu=help for details)
-mtriple=<string> - Override target triple for module
-nozero-initialized-in-bss - Don't place zero-initialized
symbols into bss section
-o=<filename> - Output filename
-pre-RA-sched - Instruction schedulers available
(before register allocation):
=default - Best scheduler for the target
=fast - Fast suboptimal list scheduling
=list-td - Top-down list scheduler
=list-burr - Bottom-up register reduction
list scheduling
=list-tdrr - Top-down register reduction
list scheduling
-print-machineinstrs - Print generated machine code
-realign-stack - Realign stack if needed
-regalloc - Register allocator to use:
(default = linearscan)
=simple - simple register allocator
=local - local register allocator
=bigblock - Big-block register allocator
=linearscan - linear scan register allocator
=pbqp - PBQP register allocator
-relocation-model - Choose relocation model
=default - Target default relocation model
=static - Non-relocatable code
=pic - Fully relocatable, position
independent code
=dynamic-no-pic - Relocatable external
references, non-relocatable code
-schedule-livein-copies - Schedule copies of livein registers
-soft-float - Generate software floating point
library calls
-spiller - Spiller to use: (default: local)
=simple - simple spiller
=local - local spiller
-stack-alignment=<uint> - Override default stack alignment
-stack-protector-buffer-size=<uint> - The lower bound for a buffer to
be considered for stack smashing protection.
-stats - Enable statistics output from
program
-tailcallopt - Turn on tail call optimization.
-time-passes - Time each pass, printing elapsed
time for each on exit
-unwind-tables - Generate unwinding tables for
all functions
-verify-dom-info - Verify dominator info (time
consuming)
-version - Display the version of this program
Anton Korobeynikov wrote:
> Hello,
>
> On Fri, Nov 14, 2008 at 6:57 PM, H. Johnson <misc at faradayco.com> wrote:
>
>> llc -march=x86 tempfileB.bc yields:
>> llc: for the -march option: : Cannot find option named 'x86'!
>>
> Run llc -help and see, if any backends were linked in. It will show
> you list of all backends, which were 'registered' and thus known to
> llc.
>
>
More information about the llvm-dev
mailing list