| # C configuration file for llvmc |
| |
| ########################################################## |
| # Language definitions |
| ########################################################## |
| lang.name=C |
| lang.opt1=-O1 |
| lang.opt2=-O2 |
| lang.opt3=-O3 |
| lang.opt4=-O3 |
| lang.opt5=-O3 |
| lang.libs=%llvmgccdir%/lib %llvmgccdir%/lib \ |
| %llvmgccdir%/lib/gcc/%llvmgccarch% |
| |
| ########################################################## |
| # Pre-processor definitions |
| ########################################################## |
| |
| # We use gcc as our pre-processor |
| preprocessor.command=gcc -E %in% -o %out% %incls% %defs% |
| preprocessor.required=true |
| |
| ########################################################## |
| # Translator definitions |
| ########################################################## |
| |
| # To compile C source, just use llvm-gcc's cc1 |
| translator.command=%llvmcc1% -quiet %in% -o %out% \ |
| %opt% %incls% %defs% %WOpts% %fOpts% %MOpts% %args% \ |
| -D_GNU_SOURCE |
| |
| # llvm-gcc does not pre-process |
| translator.preprocesses=false |
| |
| # The translator is required to run. |
| translator.required=true |
| |
| # Output of the translator is assembly |
| translator.output=assembly |
| |
| ########################################################## |
| # Optimizer definitions |
| ########################################################## |
| |
| # Use gccas to clean up the generated code |
| optimizer.command=%bindir%/gccas %in% -o %out% %args% |
| optimizer.required = true |
| |
| # gccas doesn't translate |
| optimizer.translates = false |
| |
| # gccas doesn't preprocess |
| optimizer.preprocesses=false |
| |
| # gccas produces bytecode |
| optimizer.output = bytecode |
| |
| ########################################################## |
| # Assembler definitions |
| ########################################################## |
| assembler.command=%bindir%/llc %in% -o %out% %target% %time% %stats% |