Stop building RTTI information for *most* llvm libraries. Notable

missing ones are libsupport, libsystem and libvmcore.  libvmcore is
currently blocked on bugpoint, which uses EH.  Once it stops using
EH, we can switch it off.

This #if 0's out 3 unit tests, because gtest requires RTTI information.
Suggestions welcome on how to fix this.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94164 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2010-01-22 06:49:46 +00:00
parent 6eeb7345f2
commit e73a31f667
89 changed files with 126 additions and 8 deletions

View File

@ -1007,7 +1007,7 @@ namespace llvm {
\ \
template<typename T> \ template<typename T> \
inline T *unwrap(ref P) { \ inline T *unwrap(ref P) { \
T *Q = dynamic_cast<T*>(unwrap(P)); \ T *Q = (T*)unwrap(P); \
assert(Q && "Invalid cast!"); \ assert(Q && "Invalid cast!"); \
return Q; \ return Q; \
} }

View File

@ -10,5 +10,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMipa LIBRARYNAME = LLVMipa
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -11,6 +11,7 @@ LEVEL = ../..
LIBRARYNAME = LLVMAnalysis LIBRARYNAME = LLVMAnalysis
DIRS = IPA DIRS = IPA
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -9,6 +9,7 @@
LEVEL = ../.. LEVEL = ../..
LIBRARYNAME = LLVMArchive LIBRARYNAME = LLVMArchive
CXXFLAGS = -fno-rtti
# We only want an archive so only those modules actually used by a tool are # We only want an archive so only those modules actually used by a tool are
# included. # included.

View File

@ -10,5 +10,6 @@
LEVEL = ../.. LEVEL = ../..
LIBRARYNAME := LLVMAsmParser LIBRARYNAME := LLVMAsmParser
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -10,6 +10,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMBitReader LIBRARYNAME = LLVMBitReader
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -10,6 +10,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMBitWriter LIBRARYNAME = LLVMBitWriter
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -1,4 +1,4 @@
##===- lib/CodeGen/SelectionDAG/Makefile -------------------*- Makefile -*-===## ##===- lib/CodeGen/AsmPrinter/Makefile ---------------------*- Makefile -*-===##
# #
# The LLVM Compiler Infrastructure # The LLVM Compiler Infrastructure
# #
@ -6,8 +6,9 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMAsmPrinter LIBRARYNAME = LLVMAsmPrinter
PARALLEL_DIRS = CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -11,6 +11,7 @@ LEVEL = ../..
LIBRARYNAME = LLVMCodeGen LIBRARYNAME = LLVMCodeGen
PARALLEL_DIRS = SelectionDAG AsmPrinter PARALLEL_DIRS = SelectionDAG AsmPrinter
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -6,8 +6,9 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMSelectionDAG LIBRARYNAME = LLVMSelectionDAG
PARALLEL_DIRS = CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -6,7 +6,9 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMInterpreter LIBRARYNAME = LLVMInterpreter
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -6,8 +6,10 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMJIT LIBRARYNAME = LLVMJIT
CXXFLAGS = -fno-rtti
# Get the $(ARCH) setting # Get the $(ARCH) setting
include $(LEVEL)/Makefile.config include $(LEVEL)/Makefile.config

View File

@ -9,5 +9,6 @@
LEVEL = ../.. LEVEL = ../..
LIBRARYNAME = LLVMExecutionEngine LIBRARYNAME = LLVMExecutionEngine
PARALLEL_DIRS = Interpreter JIT PARALLEL_DIRS = Interpreter JIT
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -10,6 +10,7 @@
LEVEL = ../.. LEVEL = ../..
LIBRARYNAME = LLVMLinker LIBRARYNAME = LLVMLinker
BUILD_ARCHIVE := 1 BUILD_ARCHIVE := 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -10,6 +10,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMMCParser LIBRARYNAME = LLVMMCParser
BUILD_ARCHIVE := 1 BUILD_ARCHIVE := 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -11,6 +11,7 @@ LEVEL = ../..
LIBRARYNAME = LLVMMC LIBRARYNAME = LLVMMC
BUILD_ARCHIVE := 1 BUILD_ARCHIVE := 1
PARALLEL_DIRS := MCParser PARALLEL_DIRS := MCParser
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMARMAsmParser LIBRARYNAME = LLVMARMAsmParser
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' ARM target directory to grab private headers # Hack: we need to include 'main' ARM target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMARMAsmPrinter LIBRARYNAME = LLVMARMAsmPrinter
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' arm target directory to grab private headers # Hack: we need to include 'main' arm target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -10,6 +10,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMARMCodeGen LIBRARYNAME = LLVMARMCodeGen
TARGET = ARM TARGET = ARM
CXXFLAGS = -fno-rtti
# Make sure that tblgen is run, first thing. # Make sure that tblgen is run, first thing.
BUILT_SOURCES = ARMGenRegisterInfo.h.inc ARMGenRegisterNames.inc \ BUILT_SOURCES = ARMGenRegisterInfo.h.inc ARMGenRegisterNames.inc \

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMARMInfo LIBRARYNAME = LLVMARMInfo
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMAlphaAsmPrinter LIBRARYNAME = LLVMAlphaAsmPrinter
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' alpha target directory to grab private headers # Hack: we need to include 'main' alpha target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -6,9 +6,11 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMAlphaCodeGen LIBRARYNAME = LLVMAlphaCodeGen
TARGET = Alpha TARGET = Alpha
CXXFLAGS = -fno-rtti
# Make sure that tblgen is run, first thing. # Make sure that tblgen is run, first thing.
BUILT_SOURCES = AlphaGenRegisterInfo.h.inc AlphaGenRegisterNames.inc \ BUILT_SOURCES = AlphaGenRegisterInfo.h.inc AlphaGenRegisterNames.inc \

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMAlphaInfo LIBRARYNAME = LLVMAlphaInfo
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMBlackfinAsmPrinter LIBRARYNAME = LLVMBlackfinAsmPrinter
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' Blackfin target directory to grab private # Hack: we need to include 'main' Blackfin target directory to grab private
# headers # headers

View File

@ -6,9 +6,11 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMBlackfinCodeGen LIBRARYNAME = LLVMBlackfinCodeGen
TARGET = Blackfin TARGET = Blackfin
CXXFLAGS = -fno-rtti
# Make sure that tblgen is run, first thing. # Make sure that tblgen is run, first thing.
BUILT_SOURCES = BlackfinGenRegisterInfo.h.inc BlackfinGenRegisterNames.inc \ BUILT_SOURCES = BlackfinGenRegisterInfo.h.inc BlackfinGenRegisterNames.inc \

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMBlackfinInfo LIBRARYNAME = LLVMBlackfinInfo
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -9,6 +9,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMCBackend LIBRARYNAME = LLVMCBackend
CXXFLAGS = -fno-rtti
DIRS = TargetInfo DIRS = TargetInfo

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMCBackendInfo LIBRARYNAME = LLVMCBackendInfo
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -9,6 +9,7 @@
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMCellSPUAsmPrinter LIBRARYNAME = LLVMCellSPUAsmPrinter
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' CellSPU target directory to grab # Hack: we need to include 'main' CellSPU target directory to grab
# private headers # private headers

View File

@ -10,6 +10,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMCellSPUCodeGen LIBRARYNAME = LLVMCellSPUCodeGen
TARGET = SPU TARGET = SPU
CXXFLAGS = -fno-rtti
BUILT_SOURCES = SPUGenInstrNames.inc SPUGenRegisterNames.inc \ BUILT_SOURCES = SPUGenInstrNames.inc SPUGenRegisterNames.inc \
SPUGenAsmWriter.inc SPUGenCodeEmitter.inc \ SPUGenAsmWriter.inc SPUGenCodeEmitter.inc \

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMCellSPUInfo LIBRARYNAME = LLVMCellSPUInfo
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -9,6 +9,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMCppBackend LIBRARYNAME = LLVMCppBackend
CXXFLAGS = -fno-rtti
DIRS = TargetInfo DIRS = TargetInfo

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMCppBackendInfo LIBRARYNAME = LLVMCppBackendInfo
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -9,6 +9,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMMSIL LIBRARYNAME = LLVMMSIL
CXXFLAGS = -fno-rtti
DIRS = TargetInfo DIRS = TargetInfo

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMMSILInfo LIBRARYNAME = LLVMMSILInfo
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMMSP430AsmPrinter LIBRARYNAME = LLVMMSP430AsmPrinter
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' MSP430 target directory to grab private headers # Hack: we need to include 'main' MSP430 target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -6,9 +6,11 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMMSP430CodeGen LIBRARYNAME = LLVMMSP430CodeGen
TARGET = MSP430 TARGET = MSP430
CXXFLAGS = -fno-rtti
# Make sure that tblgen is run, first thing. # Make sure that tblgen is run, first thing.
BUILT_SOURCES = MSP430GenRegisterInfo.h.inc MSP430GenRegisterNames.inc \ BUILT_SOURCES = MSP430GenRegisterInfo.h.inc MSP430GenRegisterNames.inc \

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMMSP430Info LIBRARYNAME = LLVMMSP430Info
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -10,6 +10,7 @@
LEVEL = ../.. LEVEL = ../..
LIBRARYNAME = LLVMTarget LIBRARYNAME = LLVMTarget
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
CXXFLAGS = -fno-rtti
# We include this early so we can access the value of TARGETS_TO_BUILD as the # We include this early so we can access the value of TARGETS_TO_BUILD as the
# value for PARALLEL_DIRS which must be set before Makefile.rules is included # value for PARALLEL_DIRS which must be set before Makefile.rules is included

View File

@ -9,6 +9,7 @@
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMMipsAsmPrinter LIBRARYNAME = LLVMMipsAsmPrinter
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' Mips target directory to grab # Hack: we need to include 'main' Mips target directory to grab
# private headers # private headers

View File

@ -6,9 +6,11 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMMipsCodeGen LIBRARYNAME = LLVMMipsCodeGen
TARGET = Mips TARGET = Mips
CXXFLAGS = -fno-rtti
# Make sure that tblgen is run, first thing. # Make sure that tblgen is run, first thing.
BUILT_SOURCES = MipsGenRegisterInfo.h.inc MipsGenRegisterNames.inc \ BUILT_SOURCES = MipsGenRegisterInfo.h.inc MipsGenRegisterNames.inc \

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMMipsInfo LIBRARYNAME = LLVMMipsInfo
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMPIC16AsmPrinter LIBRARYNAME = LLVMPIC16AsmPrinter
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' pic16 target directory to grab private headers # Hack: we need to include 'main' pic16 target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -6,9 +6,11 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMPIC16CodeGen LIBRARYNAME = LLVMPIC16CodeGen
TARGET = PIC16 TARGET = PIC16
CXXFLAGS = -fno-rtti
# Make sure that tblgen is run, first thing. # Make sure that tblgen is run, first thing.
BUILT_SOURCES = PIC16GenRegisterInfo.h.inc PIC16GenRegisterNames.inc \ BUILT_SOURCES = PIC16GenRegisterInfo.h.inc PIC16GenRegisterNames.inc \

View File

@ -10,6 +10,7 @@ LEVEL = ../../../..
TARGET = PIC16 TARGET = PIC16
LIBRARYNAME = LLVMpic16passes LIBRARYNAME = LLVMpic16passes
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMPIC16Info LIBRARYNAME = LLVMPIC16Info
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMPowerPCAsmPrinter LIBRARYNAME = LLVMPowerPCAsmPrinter
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' PowerPC target directory to grab private headers # Hack: we need to include 'main' PowerPC target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -6,9 +6,11 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMPowerPCCodeGen LIBRARYNAME = LLVMPowerPCCodeGen
TARGET = PPC TARGET = PPC
CXXFLAGS = -fno-rtti
# Make sure that tblgen is run, first thing. # Make sure that tblgen is run, first thing.
BUILT_SOURCES = PPCGenInstrNames.inc PPCGenRegisterNames.inc \ BUILT_SOURCES = PPCGenInstrNames.inc PPCGenRegisterNames.inc \

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMPowerPCInfo LIBRARYNAME = LLVMPowerPCInfo
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -8,6 +8,8 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMSparcAsmPrinter LIBRARYNAME = LLVMSparcAsmPrinter
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' Sparc target directory to grab private headers # Hack: we need to include 'main' Sparc target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -6,9 +6,11 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMSparcCodeGen LIBRARYNAME = LLVMSparcCodeGen
TARGET = Sparc TARGET = Sparc
CXXFLAGS = -fno-rtti
# Make sure that tblgen is run, first thing. # Make sure that tblgen is run, first thing.
BUILT_SOURCES = SparcGenRegisterInfo.h.inc SparcGenRegisterNames.inc \ BUILT_SOURCES = SparcGenRegisterInfo.h.inc SparcGenRegisterNames.inc \

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMSparcInfo LIBRARYNAME = LLVMSparcInfo
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMSystemZAsmPrinter LIBRARYNAME = LLVMSystemZAsmPrinter
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' SystemZ target directory to grab private headers # Hack: we need to include 'main' SystemZ target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -6,9 +6,11 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMSystemZCodeGen LIBRARYNAME = LLVMSystemZCodeGen
TARGET = SystemZ TARGET = SystemZ
CXXFLAGS = -fno-rtti
# Make sure that tblgen is run, first thing. # Make sure that tblgen is run, first thing.
BUILT_SOURCES = SystemZGenRegisterInfo.h.inc SystemZGenRegisterNames.inc \ BUILT_SOURCES = SystemZGenRegisterInfo.h.inc SystemZGenRegisterNames.inc \

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMSystemZInfo LIBRARYNAME = LLVMSystemZInfo
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMX86AsmParser LIBRARYNAME = LLVMX86AsmParser
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' x86 target directory to grab private headers # Hack: we need to include 'main' x86 target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMX86AsmPrinter LIBRARYNAME = LLVMX86AsmPrinter
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' x86 target directory to grab private headers # Hack: we need to include 'main' x86 target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -9,6 +9,7 @@
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMX86Disassembler LIBRARYNAME = LLVMX86Disassembler
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' x86 target directory to grab private headers # Hack: we need to include 'main' x86 target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -6,9 +6,11 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMX86CodeGen LIBRARYNAME = LLVMX86CodeGen
TARGET = X86 TARGET = X86
CXXFLAGS = -fno-rtti
# Make sure that tblgen is run, first thing. # Make sure that tblgen is run, first thing.
BUILT_SOURCES = X86GenRegisterInfo.h.inc X86GenRegisterNames.inc \ BUILT_SOURCES = X86GenRegisterInfo.h.inc X86GenRegisterNames.inc \

View File

@ -6,8 +6,10 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMX86Info LIBRARYNAME = LLVMX86Info
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -9,6 +9,7 @@
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMXCoreAsmPrinter LIBRARYNAME = LLVMXCoreAsmPrinter
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' XCore target directory to grab private headers # Hack: we need to include 'main' XCore target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -6,9 +6,11 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMXCoreCodeGen LIBRARYNAME = LLVMXCoreCodeGen
TARGET = XCore TARGET = XCore
CXXFLAGS = -fno-rtti
# Make sure that tblgen is run, first thing. # Make sure that tblgen is run, first thing.
BUILT_SOURCES = XCoreGenRegisterInfo.h.inc XCoreGenRegisterNames.inc \ BUILT_SOURCES = XCoreGenRegisterInfo.h.inc XCoreGenRegisterNames.inc \

View File

@ -6,8 +6,10 @@
# License. See LICENSE.TXT for details. # License. See LICENSE.TXT for details.
# #
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../../../.. LEVEL = ../../../..
LIBRARYNAME = LLVMXCoreInfo LIBRARYNAME = LLVMXCoreInfo
CXXFLAGS = -fno-rtti
# Hack: we need to include 'main' target directory to grab private headers # Hack: we need to include 'main' target directory to grab private headers
CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/.. CPPFLAGS = -I$(PROJ_OBJ_DIR)/.. -I$(PROJ_SRC_DIR)/..

View File

@ -11,6 +11,7 @@ LEVEL = ../../..
LIBRARYNAME = LLVMHello LIBRARYNAME = LLVMHello
LOADABLE_MODULE = 1 LOADABLE_MODULE = 1
USEDLIBS = USEDLIBS =
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -10,6 +10,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMipo LIBRARYNAME = LLVMipo
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -10,6 +10,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMInstCombine LIBRARYNAME = LLVMInstCombine
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -10,6 +10,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMInstrumentation LIBRARYNAME = LLVMInstrumentation
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -10,6 +10,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMScalarOpts LIBRARYNAME = LLVMScalarOpts
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -10,6 +10,7 @@
LEVEL = ../../.. LEVEL = ../../..
LIBRARYNAME = LLVMTransformUtils LIBRARYNAME = LLVMTransformUtils
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -9,6 +9,7 @@
LEVEL = ../.. LEVEL = ../..
LIBRARYNAME = LLVMCore LIBRARYNAME = LLVMCore
BUILD_ARCHIVE = 1 BUILD_ARCHIVE = 1
#CXXFLAGS = -fno-rtti
BUILT_SOURCES = $(PROJ_OBJ_ROOT)/include/llvm/Intrinsics.gen BUILT_SOURCES = $(PROJ_OBJ_ROOT)/include/llvm/Intrinsics.gen

View File

@ -19,6 +19,7 @@ LINK_LIBS_IN_SHARED=1
SHARED_LIBRARY = 1 SHARED_LIBRARY = 1
BUILD_ARCHIVE = 0 BUILD_ARCHIVE = 0
LOADABLE_MODULE = 1 LOADABLE_MODULE = 1
CXXFLAGS = -fno-rtti
LINK_COMPONENTS := support system LINK_COMPONENTS := support system
LIBS += -llto LIBS += -llto

View File

@ -9,6 +9,7 @@
LEVEL = ../.. LEVEL = ../..
TOOLNAME = llc TOOLNAME = llc
CXXFLAGS = -fno-rtti
# Include this here so we can get the configuration of the targets # Include this here so we can get the configuration of the targets
# that have been configured for construction. We have to do this # that have been configured for construction. We have to do this

View File

@ -9,6 +9,7 @@
LEVEL := ../.. LEVEL := ../..
TOOLNAME := lli TOOLNAME := lli
CXXFLAGS = -fno-rtti
LINK_COMPONENTS := jit interpreter nativecodegen bitreader selectiondag LINK_COMPONENTS := jit interpreter nativecodegen bitreader selectiondag
# Enable JIT support # Enable JIT support

View File

@ -11,6 +11,7 @@ LEVEL = ../..
TOOLNAME = llvm-ar TOOLNAME = llvm-ar
LINK_COMPONENTS = archive LINK_COMPONENTS = archive
REQUIRES_EH := 1 REQUIRES_EH := 1
#CXXFLAGS = -fno-rtti
# This tool has no plugins, optimize startup time. # This tool has no plugins, optimize startup time.
TOOL_NO_EXPORTS = 1 TOOL_NO_EXPORTS = 1

View File

@ -10,7 +10,7 @@
LEVEL = ../.. LEVEL = ../..
TOOLNAME = llvm-as TOOLNAME = llvm-as
LINK_COMPONENTS := asmparser bitwriter LINK_COMPONENTS := asmparser bitwriter
REQUIRES_EH := 1 CXXFLAGS = -fno-rtti
# This tool has no plugins, optimize startup time. # This tool has no plugins, optimize startup time.
TOOL_NO_EXPORTS = 1 TOOL_NO_EXPORTS = 1

View File

@ -10,7 +10,6 @@ LEVEL = ../..
TOOLNAME = llvm-bcanalyzer TOOLNAME = llvm-bcanalyzer
LINK_COMPONENTS := bitreader LINK_COMPONENTS := bitreader
REQUIRES_EH := 1
# This tool has no plugins, optimize startup time. # This tool has no plugins, optimize startup time.
TOOL_NO_EXPORTS = 1 TOOL_NO_EXPORTS = 1

View File

@ -10,7 +10,6 @@
LEVEL = ../.. LEVEL = ../..
EXTRA_DIST = LibDeps.txt FinalLibDeps.txt llvm-config.in.in find-cycles.pl EXTRA_DIST = LibDeps.txt FinalLibDeps.txt llvm-config.in.in find-cycles.pl
REQUIRES_EH := 1
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -10,7 +10,7 @@ LEVEL = ../..
TOOLNAME = llvm-dis TOOLNAME = llvm-dis
LINK_COMPONENTS := bitreader LINK_COMPONENTS := bitreader
REQUIRES_EH := 1 CXXFLAGS = -fno-rtti
# This tool has no plugins, optimize startup time. # This tool has no plugins, optimize startup time.
TOOL_NO_EXPORTS = 1 TOOL_NO_EXPORTS = 1

View File

@ -11,6 +11,7 @@ LEVEL = ../..
TOOLNAME = llvm-extract TOOLNAME = llvm-extract
LINK_COMPONENTS := ipo bitreader bitwriter asmparser LINK_COMPONENTS := ipo bitreader bitwriter asmparser
CXXFLAGS = -fno-rtti
# This tool has no plugins, optimize startup time. # This tool has no plugins, optimize startup time.
TOOL_NO_EXPORTS = 1 TOOL_NO_EXPORTS = 1

View File

@ -11,5 +11,6 @@ LEVEL = ../..
TOOLNAME = llvm-ld TOOLNAME = llvm-ld
LINK_COMPONENTS = ipo scalaropts linker archive bitwriter LINK_COMPONENTS = ipo scalaropts linker archive bitwriter
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -10,6 +10,7 @@ LEVEL = ../..
TOOLNAME = llvm-link TOOLNAME = llvm-link
LINK_COMPONENTS = linker bitreader bitwriter asmparser LINK_COMPONENTS = linker bitreader bitwriter asmparser
CXXFLAGS = -fno-rtti
# This tool has no plugins, optimize startup time. # This tool has no plugins, optimize startup time.
TOOL_NO_EXPORTS = 1 TOOL_NO_EXPORTS = 1

View File

@ -13,6 +13,7 @@ TOOLNAME = llvm-mc
# This tool has no plugins, optimize startup time. # This tool has no plugins, optimize startup time.
TOOL_NO_EXPORTS = 1 TOOL_NO_EXPORTS = 1
NO_INSTALL = 1 NO_INSTALL = 1
CXXFLAGS = -fno-rtti
# Include this here so we can get the configuration of the targets # Include this here so we can get the configuration of the targets
# that have been configured for construction. We have to do this # that have been configured for construction. We have to do this

View File

@ -13,5 +13,6 @@ LINK_COMPONENTS = archive bitreader
# This tool has no plugins, optimize startup time. # This tool has no plugins, optimize startup time.
TOOL_NO_EXPORTS = 1 TOOL_NO_EXPORTS = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -13,5 +13,6 @@ LINK_COMPONENTS = bitreader analysis
# This tool has no plugins, optimize startup time. # This tool has no plugins, optimize startup time.
TOOL_NO_EXPORTS = 1 TOOL_NO_EXPORTS = 1
CXXFLAGS = -fno-rtti
include $(LEVEL)/Makefile.common include $(LEVEL)/Makefile.common

View File

@ -17,6 +17,7 @@ include $(LEVEL)/Makefile.config
LINK_LIBS_IN_SHARED = 1 LINK_LIBS_IN_SHARED = 1
SHARED_LIBRARY = 1 SHARED_LIBRARY = 1
CXXFLAGS = -fno-rtti
LINK_COMPONENTS := $(TARGETS_TO_BUILD) ipo scalaropts linker bitreader bitwriter LINK_COMPONENTS := $(TARGETS_TO_BUILD) ipo scalaropts linker bitreader bitwriter

View File

@ -8,6 +8,7 @@
##===----------------------------------------------------------------------===## ##===----------------------------------------------------------------------===##
LEVEL = ../.. LEVEL = ../..
TOOLNAME = opt TOOLNAME = opt
CXXFLAGS = -fno-rtti
LINK_COMPONENTS := bitreader bitwriter asmparser instrumentation scalaropts ipo LINK_COMPONENTS := bitreader bitwriter asmparser instrumentation scalaropts ipo

View File

@ -23,6 +23,9 @@
using namespace llvm; using namespace llvm;
int dummy;
#if 0
namespace { namespace {
struct FunctionEmittedEvent { struct FunctionEmittedEvent {
@ -235,3 +238,4 @@ testing::Environment* const jit_env =
testing::AddGlobalTestEnvironment(new JITEnvironment); testing::AddGlobalTestEnvironment(new JITEnvironment);
} // anonymous namespace } // anonymous namespace
#endif

View File

@ -58,6 +58,7 @@ std::string DumpFunction(const Function *F) {
return Result; return Result;
} }
#if 0
class RecordingJITMemoryManager : public JITMemoryManager { class RecordingJITMemoryManager : public JITMemoryManager {
const OwningPtr<JITMemoryManager> Base; const OwningPtr<JITMemoryManager> Base;
public: public:
@ -178,6 +179,7 @@ public:
return Base->endExceptionTable(F, TableStart, TableEnd, FrameRegister); return Base->endExceptionTable(F, TableStart, TableEnd, FrameRegister);
} }
}; };
#endif
bool LoadAssemblyInto(Module *M, const char *assembly) { bool LoadAssemblyInto(Module *M, const char *assembly) {
SMDiagnostic Error; SMDiagnostic Error;
@ -195,11 +197,15 @@ class JITTest : public testing::Test {
virtual void SetUp() { virtual void SetUp() {
M = new Module("<main>", Context); M = new Module("<main>", Context);
MP = new ExistingModuleProvider(M); MP = new ExistingModuleProvider(M);
#if 0
RJMM = new RecordingJITMemoryManager; RJMM = new RecordingJITMemoryManager;
RJMM->setPoisonMemory(true); RJMM->setPoisonMemory(true);
#endif
std::string Error; std::string Error;
TheJIT.reset(EngineBuilder(MP).setEngineKind(EngineKind::JIT) TheJIT.reset(EngineBuilder(MP).setEngineKind(EngineKind::JIT)
#if 0
.setJITMemoryManager(RJMM) .setJITMemoryManager(RJMM)
#endif
.setErrorStr(&Error).create()); .setErrorStr(&Error).create());
ASSERT_TRUE(TheJIT.get() != NULL) << Error; ASSERT_TRUE(TheJIT.get() != NULL) << Error;
} }
@ -211,7 +217,9 @@ class JITTest : public testing::Test {
LLVMContext Context; LLVMContext Context;
Module *M; // Owned by MP. Module *M; // Owned by MP.
ModuleProvider *MP; // Owned by ExecutionEngine. ModuleProvider *MP; // Owned by ExecutionEngine.
#if 0
RecordingJITMemoryManager *RJMM; RecordingJITMemoryManager *RJMM;
#endif
OwningPtr<ExecutionEngine> TheJIT; OwningPtr<ExecutionEngine> TheJIT;
}; };
@ -430,6 +438,7 @@ TEST_F(JITTest, ModuleDeletion) {
TheJIT->getPointerToFunction(func); TheJIT->getPointerToFunction(func);
TheJIT->deleteModuleProvider(MP); TheJIT->deleteModuleProvider(MP);
#if 0
SmallPtrSet<const void*, 2> FunctionsDeallocated; SmallPtrSet<const void*, 2> FunctionsDeallocated;
for (unsigned i = 0, e = RJMM->deallocateFunctionBodyCalls.size(); for (unsigned i = 0, e = RJMM->deallocateFunctionBodyCalls.size();
i != e; ++i) { i != e; ++i) {
@ -463,6 +472,7 @@ TEST_F(JITTest, ModuleDeletion) {
} }
EXPECT_EQ(RJMM->startExceptionTableCalls.size(), EXPECT_EQ(RJMM->startExceptionTableCalls.size(),
NumTablesDeallocated); NumTablesDeallocated);
#endif
} }
// ARM and PPC still emit stubs for calls since the target may be too far away // ARM and PPC still emit stubs for calls since the target may be too far away
@ -497,14 +507,18 @@ TEST_F(JITTest, NoStubs) {
// We should now allocate no more stubs, we have the code to foo // We should now allocate no more stubs, we have the code to foo
// and the existing stub for bar. // and the existing stub for bar.
#if 0
int stubsBefore = RJMM->stubsAllocated; int stubsBefore = RJMM->stubsAllocated;
#endif
Function *func = M->getFunction("main"); Function *func = M->getFunction("main");
TheJIT->getPointerToFunction(func); TheJIT->getPointerToFunction(func);
Function *bar = M->getFunction("bar"); Function *bar = M->getFunction("bar");
TheJIT->getPointerToFunction(bar); TheJIT->getPointerToFunction(bar);
#if 0
ASSERT_EQ(stubsBefore, RJMM->stubsAllocated); ASSERT_EQ(stubsBefore, RJMM->stubsAllocated);
#endif
} }
#endif // !ARM && !PPC #endif // !ARM && !PPC

View File

@ -32,6 +32,10 @@
#include "llvm/Assembly/PrintModulePass.h" #include "llvm/Assembly/PrintModulePass.h"
#include "gtest/gtest.h" #include "gtest/gtest.h"
int dummy;
#if 0
namespace llvm { namespace llvm {
namespace { namespace {
// ND = no deps // ND = no deps
@ -525,3 +529,4 @@ namespace llvm {
} }
} }
#endif