+++ /dev/null
-#include "Target.hxx"
-
-#include <string>
-
-Target::Target(llvm::object::Binary* binary)
- : _logger(log4cxx::Logger::getLogger("disassembler.Target"))
- , triple("unknown-unknown-unknown")
-{
- std::string error;
- llvm::object::ObjectFile * o = llvm::dyn_cast<llvm::object::ObjectFile>(binary);
-
- triple.setArch(llvm::Triple::ArchType(o->getArch()));
- std::string tripleName(triple.getTriple());
- LOG4CXX_INFO(_logger, "Detected triple " << tripleName);
-
- target = llvm::TargetRegistry::lookupTarget("", triple, error);
- if (!target) {
- LOG4CXX_ERROR(_logger, "Couldn't create Target: " << error);
- return;
- }
- LOG4CXX_INFO(_logger, "Target: " << target->getName());
-
- STI.reset(target->createMCSubtargetInfo(tripleName, "", ""));
- if (!STI) {
- LOG4CXX_ERROR(_logger, "No subtarget for target " << tripleName);
- return;
- }
-}