summaryrefslogtreecommitdiffstats
path: root/llvm/examples/BrainF/BrainFDriver.cpp
diff options
context:
space:
mode:
authorBoris Ulasevich <boris.ulasevich@gmail.com>2016-12-15 19:29:42 +0000
committerBoris Ulasevich <boris.ulasevich@gmail.com>2016-12-15 19:29:42 +0000
commitb76f6c2745f7afb5912ce13110f4e9bd2405f47b (patch)
tree763491129def841c5075a9f47855aec51d296fda /llvm/examples/BrainF/BrainFDriver.cpp
parentb0aa31bb25a255e3ac4df3bd2e7f64f14b8146c1 (diff)
downloadbcm5719-llvm-b76f6c2745f7afb5912ce13110f4e9bd2405f47b.tar.gz
bcm5719-llvm-b76f6c2745f7afb5912ce13110f4e9bd2405f47b.zip
BrainF example: fixing segfault caused by outdated code with missing MCJIT dependency
Differential Revision: https://reviews.llvm.org/D26280 llvm-svn: 289857
Diffstat (limited to 'llvm/examples/BrainF/BrainFDriver.cpp')
-rw-r--r--llvm/examples/BrainF/BrainFDriver.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/examples/BrainF/BrainFDriver.cpp b/llvm/examples/BrainF/BrainFDriver.cpp
index 686f476cf46..57a86fbf521 100644
--- a/llvm/examples/BrainF/BrainFDriver.cpp
+++ b/llvm/examples/BrainF/BrainFDriver.cpp
@@ -29,6 +29,7 @@
#include "llvm/Bitcode/BitcodeWriter.h"
#include "llvm/ExecutionEngine/ExecutionEngine.h"
#include "llvm/ExecutionEngine/GenericValue.h"
+#include "llvm/ExecutionEngine/MCJIT.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DerivedTypes.h"
@@ -153,10 +154,15 @@ int main(int argc, char **argv) {
//Write it out
if (JIT) {
InitializeNativeTarget();
+ InitializeNativeTargetAsmPrinter();
outs() << "------- Running JIT -------\n";
Module &M = *Mod;
ExecutionEngine *ee = EngineBuilder(std::move(Mod)).create();
+ if (!ee) {
+ errs() << "Error: execution engine creation failed.\n";
+ abort();
+ }
std::vector<GenericValue> args;
Function *brainf_func = M.getFunction("brainf");
GenericValue gv = ee->runFunction(brainf_func, args);
OpenPOWER on IntegriCloud