diff options
Diffstat (limited to 'tools/llvmc/cpp')
-rw-r--r-- | tools/llvmc/cpp | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/tools/llvmc/cpp b/tools/llvmc/cpp new file mode 100644 index 0000000..5f20fd8 --- /dev/null +++ b/tools/llvmc/cpp @@ -0,0 +1,61 @@ +# 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 g++ as our pre-processor + preprocessor.command=g++ -E %in% -o %out% %incls% %defs% + preprocessor.required=true + +########################################################## +# Translator definitions +########################################################## + + # To compile C++ source, just use llvm-g++'s cc1 + translator.command=%llvmcc1plus% -quiet %in% -o %out% \ + %opt% %incls% %defs% %WOpts% %fOpts% %MOpts% %args% \ + -D_GNU_SOURCE + + # llvm-g++ does not pre-process + translator.preprocesses=false + + # The translator is required to run. + translator.required=true + + # Output of 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% |