resolved circular dependency between libevm and libevmjit

This commit is contained in:
Artur Zawłocki 2014-11-28 00:37:24 +01:00
parent a5d0496ea4
commit b78dc045f6
2 changed files with 9 additions and 4 deletions

View File

@ -31,6 +31,7 @@
#include <json_spirit/json_spirit_writer_template.h>
#include <libdevcore/CommonIO.h>
#include <libdevcore/CommonData.h>
#include <libethereum/VMFactory.h>
#include <libevmcore/Instruction.h>
#include <libevm/VM.h>
#include "vm.h"
@ -128,7 +129,7 @@ void doMyTests(json_spirit::mValue& v)
assert(o.count("exec") > 0);
auto vmObj = eth::VMFace::create(eth::VMFace::Interpreter);
auto vmObj = eth::VMFactory::create(eth::VMFactory::Interpreter);
auto& vm = *vmObj;
test::FakeExtVM fev;
fev.importEnv(o["env"].get_obj());

10
vm.cpp
View File

@ -22,6 +22,7 @@
#include <chrono>
#include <boost/filesystem.hpp>
#include <libethereum/VMFactory.h>
#include "vm.h"
using namespace std;
using namespace json_spirit;
@ -322,8 +323,11 @@ void doVMTests(json_spirit::mValue& v, bool _fillin)
auto useJit = false;
for (auto i = 0; i < argc && !useJit; ++i)
useJit |= std::string(argv[i]) == "--jit";
auto vmKind = useJit ? VMFace::JIT : VMFace::Interpreter;
#if ETH_EVMJIT
auto vmKind = useJit ? VMFactory::JIT : VMFactory::Interpreter;
#else
auto vmKind == VMFactory::Interpreter;
#endif
dev::test::FakeExtVM fev;
fev.importEnv(o["env"].get_obj());
@ -339,7 +343,7 @@ void doVMTests(json_spirit::mValue& v, bool _fillin)
fev.code = fev.thisTxCode;
}
auto vm = VMFace::create(vmKind, fev.gas);
auto vm = VMFactory::create(vmKind, fev.gas);
bytes output;
auto startTime = std::chrono::high_resolution_clock::now();