Add an llvmc specification file for the "st" suffix. This allows Stacker
authorReid Spencer <rspencer@reidspencer.com>
Thu, 19 May 2005 00:54:10 +0000 (00:54 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Thu, 19 May 2005 00:54:10 +0000 (00:54 +0000)
programs to benefit from the optimization capabilities of the llvmc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22133 91177308-0d34-0410-b5e6-96231b3b80d8

projects/Stacker/tools/stkrc/Makefile
projects/Stacker/tools/stkrc/st [new file with mode: 0644]

index a4f97a90f5a01143e24b03fd48239f42ab85ac2c..99f04471f40c77d46ec675b9b1054f8d2edfad52 100644 (file)
@@ -12,7 +12,8 @@ TOOLNAME = stkrc
 LLVMLIBS = LLVMAsmParser LLVMBCWriter LLVMTransforms LLVMipo.a LLVMipa.a \
           LLVMScalarOpts LLVMAnalysis.a LLVMTarget.a LLVMTransformUtils \
           LLVMCore LLVMSupport.a LLVMbzip2 LLVMSystem.a 
-
+CONFIG_FILES = st
+EXTRA_DIST = st
 USEDLIBS=stkr_compiler 
 
 
diff --git a/projects/Stacker/tools/stkrc/st b/projects/Stacker/tools/stkrc/st
new file mode 100644 (file)
index 0000000..2006825
--- /dev/null
@@ -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%