blob: c08c8d1c7c208680ad27b058c874f4492bde0cc8 [file] [log] [blame]
Reid Spencerbae68252004-08-19 04:49:47 +00001# Stacker Configuration File For llvmc
Reid Spencer936f5c72004-08-15 08:16:12 +00002
Reid Spencerbae68252004-08-19 04:49:47 +00003##########################################################
4# Language definitions
5##########################################################
Reid Spencer936f5c72004-08-15 08:16:12 +00006 lang.name=Stacker
Reid Spencerbae68252004-08-19 04:49:47 +00007 lang.opt1=-simplifycfg -instcombine -mem2reg
Reid Spencerb50acbc2004-08-22 18:01:19 +00008 lang.opt2=-simplifycfg -instcombine -mem2reg -load-vn \
9 -gcse -dse -scalarrepl -sccp
10 lang.opt3=-simplifycfg -instcombine -mem2reg -load-vn \
11 -gcse -dse -scalarrepl -sccp -branch-combine -adce \
12 -globaldce -inline -licm
13 lang.opt4=-simplifycfg -instcombine -mem2reg -load-vn \
14 -gcse -dse -scalarrepl -sccp -ipconstprop \
15 -branch-combine -adce -globaldce -inline -licm
16 lang.opt5=-simplifycfg -instcombine -mem2reg --load-vn \
17 -gcse -dse scalarrepl -sccp -ipconstprop \
18 -branch-combine -adce -globaldce -inline -licm \
19 -block-placement
Reid Spencerbae68252004-08-19 04:49:47 +000020
21##########################################################
Reid Spencer936f5c72004-08-15 08:16:12 +000022# Pre-processor definitions
Reid Spencerbae68252004-08-19 04:49:47 +000023##########################################################
24
25 # Stacker doesn't have a preprocessor but the following
26 # allows the -E option to be supported
Reid Spencer53aa7932004-08-20 22:53:11 +000027 preprocessor.command=cp %in% %out%
Reid Spencerbae68252004-08-19 04:49:47 +000028 preprocessor.required=false
Reid Spencer936f5c72004-08-15 08:16:12 +000029
Reid Spencerbae68252004-08-19 04:49:47 +000030##########################################################
Reid Spencer936f5c72004-08-15 08:16:12 +000031# Translator definitions
Reid Spencerbae68252004-08-19 04:49:47 +000032##########################################################
Reid Spencer936f5c72004-08-15 08:16:12 +000033
Reid Spencerbae68252004-08-19 04:49:47 +000034 # To compile stacker source, we just run the stacker
35 # compiler with a default stack size of 2048 entries.
Reid Spencerb50acbc2004-08-22 18:01:19 +000036 translator.command=stkrc -s 2048 %in% -o %out% %time% \
37 %stats% %args%
Reid Spencerbae68252004-08-19 04:49:47 +000038
39 # stkrc doesn't preprocess but we set this to true so
40 # that we don't run the cp command by default.
41 translator.preprocesses=true
42
43 # The translator is required to run.
44 translator.required=true
45
Reid Spencerbae68252004-08-19 04:49:47 +000046 # stkrc doesn't handle the -On options
Reid Spencer01b77f92004-08-24 14:24:14 +000047 translator.output=bytecode
Reid Spencerbae68252004-08-19 04:49:47 +000048
49##########################################################
Reid Spencer936f5c72004-08-15 08:16:12 +000050# Optimizer definitions
Reid Spencerbae68252004-08-19 04:49:47 +000051##########################################################
52
53 # For optimization, we use the LLVM "opt" program
Reid Spencerb50acbc2004-08-22 18:01:19 +000054 optimizer.command=opt %in% -o %out% %opt% %time% %stats% \
55 %args%
Reid Spencer936f5c72004-08-15 08:16:12 +000056
Reid Spencer01b77f92004-08-24 14:24:14 +000057 optimizer.required = true
Reid Spencerbae68252004-08-19 04:49:47 +000058
59 # opt doesn't translate
60 optimizer.translates = no
61
62 # opt doesn't preprocess
63 optimizer.preprocesses=no
64
Reid Spencer01b77f92004-08-24 14:24:14 +000065 # opt produces bytecode
66 optimizer.output = bc
67
Reid Spencerbae68252004-08-19 04:49:47 +000068##########################################################
Reid Spencer936f5c72004-08-15 08:16:12 +000069# Assembler definitions
Reid Spencerbae68252004-08-19 04:49:47 +000070##########################################################
Reid Spencer01b77f92004-08-24 14:24:14 +000071 assembler.command=llc %in% -o %out% %target% %time% %stats%