aboutsummaryrefslogtreecommitdiffstats
path: root/tools/Makefile.JIT
diff options
context:
space:
mode:
authorMisha Brukman <brukman+llvm@gmail.com>2004-10-14 18:58:19 +0000
committerMisha Brukman <brukman+llvm@gmail.com>2004-10-14 18:58:19 +0000
commit064782209bd5b20d8b0b255f8198f482165e4657 (patch)
treeefe36f50f5b8d393b55445f9540412c1d373e412 /tools/Makefile.JIT
parentee3d2c8bc801bfd977fb8b0d1212bdbe59340159 (diff)
downloadexternal_llvm-064782209bd5b20d8b0b255f8198f482165e4657.zip
external_llvm-064782209bd5b20d8b0b255f8198f482165e4657.tar.gz
external_llvm-064782209bd5b20d8b0b255f8198f482165e4657.tar.bz2
Since several tools and examples want JIT support, factor out the process of
adding the right libs for any given architecture's JIT into a single place git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16989 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/Makefile.JIT')
-rw-r--r--tools/Makefile.JIT68
1 files changed, 68 insertions, 0 deletions
diff --git a/tools/Makefile.JIT b/tools/Makefile.JIT
new file mode 100644
index 0000000..a59fa66
--- /dev/null
+++ b/tools/Makefile.JIT
@@ -0,0 +1,68 @@
+##===- tools/Makefile.JIT ----------------------------------*- Makefile -*-===##
+#
+# The LLVM Compiler Infrastructure
+#
+# This file was developed by the LLVM research group and is distributed under
+# the University of Illinois Open Source License. See LICENSE.TXT for details.
+#
+##===----------------------------------------------------------------------===##
+#
+# This file adds the appropriate libraries to USEDLIBS to enable JIT support for
+# a tool on a supported target.
+#
+##===----------------------------------------------------------------------===##
+
+LEVEL = ../..
+
+# Get the $(ARCH) setting
+include $(LEVEL)/Makefile.config
+
+# Generic JIT libraries
+JITLIBS = lli-jit codegen executionengine
+ARCHLIBS =
+
+# You can enable the X86 JIT on a non-X86 host by setting the flag
+# ENABLE_X86_JIT on the make command line. If not, it will still be
+# enabled automagically on an X86 host.
+ifeq ($(ARCH), x86)
+ ENABLE_X86_JIT = 1
+endif
+
+# What the X86 JIT requires
+ifdef ENABLE_X86_JIT
+ CPPFLAGS += -DENABLE_X86_JIT
+ JITLIBS += x86 selectiondag
+ # X86 doesn't require any ARCHLIBS
+endif
+
+# You can enable the Sparc JIT on a non-Sparc host by setting the flag
+# ENABLE_SPARC_JIT on the make command line. If not, it will still be
+# enabled automagically on an Sparc host.
+ifeq ($(ARCH), Sparc)
+ ENABLE_SPARC_JIT = 1
+endif
+
+# What the Sparc JIT requires
+ifdef ENABLE_SPARC_JIT
+ CPPFLAGS += -DENABLE_SPARC_JIT
+ JITLIBS += sparcv9
+ ARCHLIBS += sparcv9sched sparcv9livevar instrument.a profpaths \
+ bcwriter transforms.a ipo.a ipa.a datastructure.a \
+ sparcv9regalloc
+endif
+
+# You can enable the PowerPC JIT on a non-PowerPC host by setting the flag
+# ENABLE_PPC_JIT on the make command line. If not, it will still be
+# enabled automagically on an PowerPC host.
+ifeq ($(ARCH), PowerPC)
+ ENABLE_PPC_JIT = 1
+endif
+
+# What the PowerPC JIT requires
+ifdef ENABLE_PPC_JIT
+ CPPFLAGS += -DENABLE_PPC_JIT
+ JITLIBS += powerpc
+endif
+
+USEDLIBS += lli-interpreter $(JITLIBS) $(ARCHLIBS) scalaropts analysis.a \
+ transformutils.a bcreader vmcore support target.a LLVMsystem.a