# Stacker Configuration File For llvmc ########################################################## # Language definitions ########################################################## lang.name=Stacker lang.opt1=-simplifycfg -instcombine -mem2reg lang.opt2=-simplifycfg -instcombine -mem2reg -scalarrepl -sccp lang.opt3=-simplifycfg -instcombine -mem2reg -scalarrepl -sccp \ -branch-combine -adce -globaldce -inline -licm -pre lang.opt4=-simplifycfg -instcombine -mem2reg -scalarrepl -sccp \ -ipconstprop -branch-combine -adce -globaldce -inline -licm -pre lang.opt5=-simplifycfg -instcombine -mem2reg -scalarrepl -sccp \ -ipconstprop -branch-combine -adce -globaldce -inline -licm -pre \ -block-placement ########################################################## # 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=stkrc -s 2048 @in@ -o @out@ @time@ @stats@ # 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=true # stkrc doesn't do any optimization, it just translates translator.optimizes=no # stkrc doesn't handle the -On options translator.groks_dash_O=no ########################################################## # Optimizer definitions ########################################################## # For optimization, we use the LLVM "opt" program optimizer.command=opt @in@ -o @out@ @opt@ @time@ @stats@ # opt doesn't (yet) grok -On optimizer.groks_dash_O=no # opt doesn't translate optimizer.translates = no # opt doesn't preprocess optimizer.preprocesses=no ########################################################## # Assembler definitions ########################################################## assembler.command=llc @in@ -o @out@ @target@ "-regalloc=linearscan" \ @time@ @stats@ ########################################################## # Linker definitions ########################################################## linker.command=gccld @in@ -o @out@ -lstkr_runtime