mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-21 20:26:41 +00:00
resolved circular dependency between libevm and libevmjit
This commit is contained in:
parent
c2c96e609f
commit
f72cceda58
2 changed files with 8 additions and 1 deletions
|
|
@ -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"
|
||||||
|
|
|
||||||
|
|
@ -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;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue