forked from OSchip/llvm-project
Add an llvmc specification file for the "st" suffix. This allows Stacker
programs to benefit from the optimization capabilities of the llvmc. llvm-svn: 22133
This commit is contained in:
parent
e9bee08f1d
commit
33d07dc48f
|
@ -12,7 +12,8 @@ TOOLNAME = stkrc
|
||||||
LLVMLIBS = LLVMAsmParser LLVMBCWriter LLVMTransforms LLVMipo.a LLVMipa.a \
|
LLVMLIBS = LLVMAsmParser LLVMBCWriter LLVMTransforms LLVMipo.a LLVMipa.a \
|
||||||
LLVMScalarOpts LLVMAnalysis.a LLVMTarget.a LLVMTransformUtils \
|
LLVMScalarOpts LLVMAnalysis.a LLVMTarget.a LLVMTransformUtils \
|
||||||
LLVMCore LLVMSupport.a LLVMbzip2 LLVMSystem.a
|
LLVMCore LLVMSupport.a LLVMbzip2 LLVMSystem.a
|
||||||
|
CONFIG_FILES = st
|
||||||
|
EXTRA_DIST = st
|
||||||
USEDLIBS=stkr_compiler
|
USEDLIBS=stkr_compiler
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -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%
|
Loading…
Reference in New Issue