mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
b50acbcf49
directly. Remove -pre (experimental pass). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15992 91177308-0d34-0410-b5e6-96231b3b80d8
80 lines
2.6 KiB
Plaintext
80 lines
2.6 KiB
Plaintext
# Stacker Configuration File For llvmc
|
|
|
|
##########################################################
|
|
# Language definitions
|
|
##########################################################
|
|
lang.name=Stacker
|
|
lang.opt1=-simplifycfg -instcombine -mem2reg
|
|
lang.opt2=-simplifycfg -instcombine -mem2reg -load-vn \
|
|
-gcse -dse -scalarrepl -sccp
|
|
lang.opt3=-simplifycfg -instcombine -mem2reg -load-vn \
|
|
-gcse -dse -scalarrepl -sccp -branch-combine -adce \
|
|
-globaldce -inline -licm
|
|
lang.opt4=-simplifycfg -instcombine -mem2reg -load-vn \
|
|
-gcse -dse -scalarrepl -sccp -ipconstprop \
|
|
-branch-combine -adce -globaldce -inline -licm
|
|
lang.opt5=-simplifycfg -instcombine -mem2reg --load-vn \
|
|
-gcse -dse scalarrepl -sccp -ipconstprop \
|
|
-branch-combine -adce -globaldce -inline -licm \
|
|
-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% %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=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% \
|
|
%args%
|
|
|
|
# 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.libs=stkr_runtime
|
|
linker.paths=
|