blob: 93d5c5b286c2e7d1cdb8ccd7cd77ac57acfc927e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
# 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
|