diff --git a/projects/Stacker/tools/stkrc/Makefile b/projects/Stacker/tools/stkrc/Makefile index a4f97a90f5a..99f04471f40 100644 --- a/projects/Stacker/tools/stkrc/Makefile +++ b/projects/Stacker/tools/stkrc/Makefile @@ -12,7 +12,8 @@ TOOLNAME = stkrc LLVMLIBS = LLVMAsmParser LLVMBCWriter LLVMTransforms LLVMipo.a LLVMipa.a \ LLVMScalarOpts LLVMAnalysis.a LLVMTarget.a LLVMTransformUtils \ LLVMCore LLVMSupport.a LLVMbzip2 LLVMSystem.a - +CONFIG_FILES = st +EXTRA_DIST = st USEDLIBS=stkr_compiler diff --git a/projects/Stacker/tools/stkrc/st b/projects/Stacker/tools/stkrc/st new file mode 100644 index 00000000000..2006825b6b7 --- /dev/null +++ b/projects/Stacker/tools/stkrc/st @@ -0,0 +1,63 @@ +# Stacker configuration file for llvmc + +########################################################## +# Language definitions +########################################################## + lang.name=Stacker + lang.opt1=-O1 + lang.opt2=-O2 + lang.opt3=-O3 + lang.opt4=-O4 + lang.opt5=-O5 + +########################################################## +# Pre-processor definitions +########################################################## + + # Stacker doesn't have a preprocessor but the following + # allows the -E option to be supported + preprocessor.command=cp %in% %out% + preprocessor.required=false + +########################################################## +# Translator definitions +########################################################## + + # To compile stacker source, we just run the stacker + # compiler with a default stack size of 2048 entries. + translator.command=%bindir%/stkrc -s 2048 %in% -f -o %out% %opt% \ + %time% %stats% %args% + + # stkrc doesn't preprocess but we set this to true so + # that we don't run the cp command by default. + translator.preprocesses=true + + # The translator is required to run. + translator.required=false + + # stkrc doesn't handle the -On options + translator.output=bytecode + +########################################################## +# Optimizer definitions +########################################################## + + # For optimization, we use the LLVM "opt" program + optimizer.command=%bindir%/stkrc -s 2048 %in% -f -o %out% %opt% \ + %time% %stats% %args% + + optimizer.required = yes + + # opt doesn't translate + optimizer.translates = yes + + # opt doesn't preprocess + optimizer.preprocesses=yes + + # opt produces bytecode + optimizer.output = bc + +########################################################## +# Assembler definitions +########################################################## + assembler.command=%bindir%/llc %in% -o %out% %target% %time% %stats%