resolved circular dependency between libevm and libevmjit

This commit is contained in:
Artur Zawłocki 2014-11-28 00:37:24 +01:00
parent c2c96e609f
commit f72cceda58
2 changed files with 8 additions and 1 deletions

View file

@ -2,6 +2,7 @@
#include "VM.h" #include "VM.h"
#include <libevm/VMFace.h> #include <libevm/VMFace.h>
#include <libevm/VM.h>
#include "ExecutionEngine.h" #include "ExecutionEngine.h"
#include "Compiler.h" #include "Compiler.h"

View file

@ -9,6 +9,9 @@ namespace dev
{ {
namespace eth namespace eth
{ {
class VMFactory;
namespace jit namespace jit
{ {
@ -16,8 +19,11 @@ class VM: public VMFace
{ {
virtual bytesConstRef go(ExtVMFace& _ext, OnOpFunc const& _onOp = {}, uint64_t _steps = (uint64_t)-1) override final; virtual bytesConstRef go(ExtVMFace& _ext, OnOpFunc const& _onOp = {}, uint64_t _steps = (uint64_t)-1) override final;
enum Kind: bool { Interpreter, JIT };
static std::unique_ptr<VMFace> create(Kind, u256 _gas = 0);
private: private:
friend VMFace; friend VMFactory;
explicit VM(u256 _gas = 0): VMFace(_gas) {} explicit VM(u256 _gas = 0): VMFace(_gas) {}
bytes m_output; bytes m_output;