summaryrefslogtreecommitdiff
path: root/tools/llvmc/c
diff options
context:
space:
mode:
authorReid Spencer <rspencer@reidspencer.com>2005-05-19 00:52:28 +0000
committerReid Spencer <rspencer@reidspencer.com>2005-05-19 00:52:28 +0000
commitcc97cfc43eb481ef61763feecb16aa3658016284 (patch)
treeb3a02020992025dba6145192325de7812367d527 /tools/llvmc/c
parent8f9e21e3deaf89253458d21fcdca1fc293b3efba (diff)
downloadllvm-cc97cfc43eb481ef61763feecb16aa3658016284.tar.gz
llvm-cc97cfc43eb481ef61763feecb16aa3658016284.tar.bz2
llvm-cc97cfc43eb481ef61763feecb16aa3658016284.tar.xz
For PR514:
* language specification files are no longer configured with "configure" * add substitutions for %bindir%, %libdir%, and various llvmgcc related variables needed in the c and cpp spec files. * Implement the stubstituions in the Compiler Driver. * Move st.in to projects/Stacker/tools/stkrc where it belongs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22128 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvmc/c')
-rw-r--r--tools/llvmc/c61
1 files changed, 61 insertions, 0 deletions
diff --git a/tools/llvmc/c b/tools/llvmc/c
new file mode 100644
index 0000000000..cbe6830b93
--- /dev/null
+++ b/tools/llvmc/c
@@ -0,0 +1,61 @@
+# C configuration file for llvmc
+
+##########################################################
+# Language definitions
+##########################################################
+ lang.name=C
+ lang.opt1=-O1
+ lang.opt2=-O2
+ lang.opt3=-O3
+ lang.opt4=-O3
+ lang.opt5=-O3
+ lang.libs=%llvmgccdir%/lib %llvmgccdir%/lib \
+ %llvmgccdir%/lib/gcc/%llvmgccarch%
+
+##########################################################
+# Pre-processor definitions
+##########################################################
+
+ # We use gcc as our pre-processor
+ preprocessor.command=gcc -E %in% -o %out% %incls% %defs%
+ preprocessor.required=true
+
+##########################################################
+# Translator definitions
+##########################################################
+
+ # To compile C source, just use llvm-gcc's cc1
+ translator.command=%llvmcc1% -quiet %in% -o %out% \
+ %opt% %incls% %defs% %WOpts% %fOpts% %MOpts% %args% \
+ -D_GNU_SOURCE
+
+ # llvm-gcc does not pre-process
+ translator.preprocesses=false
+
+ # The translator is required to run.
+ translator.required=true
+
+ # Output of the translator is assembly
+ translator.output=assembly
+
+##########################################################
+# Optimizer definitions
+##########################################################
+
+ # Use gccas to clean up the generated code
+ optimizer.command=%bindir%/gccas %in% -o %out% %args%
+ optimizer.required = true
+
+ # gccas doesn't translate
+ optimizer.translates = false
+
+ # gccas doesn't preprocess
+ optimizer.preprocesses=false
+
+ # gccas produces bytecode
+ optimizer.output = bytecode
+
+##########################################################
+# Assembler definitions
+##########################################################
+ assembler.command=%bindir%/llc %in% -o %out% %target% %time% %stats%