aboutsummaryrefslogtreecommitdiffstats
path: root/tools/lto
diff options
context:
space:
mode:
Diffstat (limited to 'tools/lto')
-rw-r--r--tools/lto/CMakeLists.txt2
-rw-r--r--tools/lto/LTOCodeGenerator.cpp7
-rw-r--r--tools/lto/LTOModule.cpp10
-rw-r--r--tools/lto/Makefile2
4 files changed, 10 insertions, 11 deletions
diff --git a/tools/lto/CMakeLists.txt b/tools/lto/CMakeLists.txt
index 7e2c5f0..9112976 100644
--- a/tools/lto/CMakeLists.txt
+++ b/tools/lto/CMakeLists.txt
@@ -1,6 +1,6 @@
set(LLVM_LINK_COMPONENTS
${LLVM_TARGETS_TO_BUILD}
- ipo scalaropts linker bitreader bitwriter mcdisassembler)
+ ipo scalaropts linker bitreader bitwriter mcdisassembler vectorize)
add_definitions( -DLLVM_VERSION_INFO=\"${PACKAGE_VERSION}\" )
diff --git a/tools/lto/LTOCodeGenerator.cpp b/tools/lto/LTOCodeGenerator.cpp
index 77d7dfe..111f8c8 100644
--- a/tools/lto/LTOCodeGenerator.cpp
+++ b/tools/lto/LTOCodeGenerator.cpp
@@ -34,6 +34,7 @@
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetRegisterInfo.h"
#include "llvm/Support/CommandLine.h"
+#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/FormattedStream.h"
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/SystemUtils.h"
@@ -111,8 +112,7 @@ bool LTOCodeGenerator::setDebugInfo(lto_debug_model debug, std::string& errMsg)
_emitDwarfDebugInfo = true;
return false;
}
- errMsg = "unknown debug format";
- return true;
+ llvm_unreachable("Unknown debug format!");
}
@@ -126,8 +126,7 @@ bool LTOCodeGenerator::setCodePICModel(lto_codegen_model model,
_codeModel = model;
return false;
}
- errMsg = "unknown pic model";
- return true;
+ llvm_unreachable("Unknown PIC model!");
}
void LTOCodeGenerator::setCpu(const char* mCpu)
diff --git a/tools/lto/LTOModule.cpp b/tools/lto/LTOModule.cpp
index 0b73729..8ce8cd2 100644
--- a/tools/lto/LTOModule.cpp
+++ b/tools/lto/LTOModule.cpp
@@ -190,9 +190,9 @@ bool LTOModule::objcClassNameFromExpression(Constant *c, std::string &name) {
Constant *op = ce->getOperand(0);
if (GlobalVariable *gvn = dyn_cast<GlobalVariable>(op)) {
Constant *cn = gvn->getInitializer();
- if (ConstantArray *ca = dyn_cast<ConstantArray>(cn)) {
+ if (ConstantDataArray *ca = dyn_cast<ConstantDataArray>(cn)) {
if (ca->isCString()) {
- name = ".objc_class_name_" + ca->getAsCString();
+ name = ".objc_class_name_" + ca->getAsCString().str();
return true;
}
}
@@ -589,8 +589,8 @@ namespace {
unsigned MaxBytesToEmit) {}
virtual void EmitCodeAlignment(unsigned ByteAlignment,
unsigned MaxBytesToEmit) {}
- virtual void EmitValueToOffset(const MCExpr *Offset,
- unsigned char Value ) {}
+ virtual bool EmitValueToOffset(const MCExpr *Offset,
+ unsigned char Value ) { return false; }
virtual void EmitFileDirective(StringRef Filename) {}
virtual void EmitDwarfAdvanceLineAddr(int64_t LineDelta,
const MCSymbol *LastLabel,
@@ -603,7 +603,7 @@ namespace {
if (Inst.getOperand(i).isExpr())
AddValueSymbols(Inst.getOperand(i).getExpr());
}
- virtual void Finish() {}
+ virtual void FinishImpl() {}
};
}
diff --git a/tools/lto/Makefile b/tools/lto/Makefile
index ef78f82..153fa03 100644
--- a/tools/lto/Makefile
+++ b/tools/lto/Makefile
@@ -10,7 +10,7 @@
LEVEL := ../..
LIBRARYNAME := LTO
LINK_COMPONENTS := all-targets ipo scalaropts linker bitreader bitwriter \
- mcdisassembler
+ mcdisassembler vectorize
LINK_LIBS_IN_SHARED := 1
SHARED_LIBRARY := 1