Merge pull request #7745 from ethereum/develop

Merge develop into develop_060
This commit is contained in:
Erik K
2019-11-19 15:30:31 +01:00
committed by GitHub
44 changed files with 831 additions and 778 deletions
+2 -1
View File
@@ -71,7 +71,8 @@ if (OSSFUZZ)
/usr/include/libprotobuf-mutator
)
target_link_libraries(abiv2_proto_ossfuzz PRIVATE solidity
evmc evmone intx ethash evmc-instructions
evmc
evmone-standalone
protobuf-mutator-libfuzzer.a
protobuf-mutator.a
protobuf.a
+1 -1
View File
@@ -24,7 +24,7 @@
#include <fstream>
static evmc::vm evmone = evmc::vm{evmc_create_evmone()};
static evmc::VM evmone = evmc::VM{evmc_create_evmone()};
using namespace dev::test::abiv2fuzzer;
using namespace dev::test;
+6
View File
@@ -437,6 +437,12 @@ void ProtoConverter::visit(NullaryOp const& _x)
case NullaryOp::GASLIMIT:
m_output << "gaslimit()";
break;
case NullaryOp::SELFBALANCE:
m_output << "selfbalance()";
break;
case NullaryOp::CHAINID:
m_output << "chainid()";
break;
}
}
+2
View File
@@ -237,6 +237,8 @@ message NullaryOp {
NUMBER = 14;
DIFFICULTY = 15;
GASLIMIT = 16;
SELFBALANCE = 17;
CHAINID = 18;
}
required NOp op = 1;
}
+3 -3
View File
@@ -70,7 +70,7 @@ DEFINE_PROTO_FUZZER(Program const& _input)
// AssemblyStack entry point
AssemblyStack stack(
langutil::EVMVersion(),
langutil::EVMVersion(langutil::EVMVersion::istanbul()),
AssemblyStack::Language::StrictAssembly,
dev::solidity::OptimiserSettings::full()
);
@@ -95,7 +95,7 @@ DEFINE_PROTO_FUZZER(Program const& _input)
yulFuzzerUtil::TerminationReason termReason = yulFuzzerUtil::interpret(
os1,
stack.parserResult()->code,
EVMDialect::strictAssemblyForEVMObjects(langutil::EVMVersion())
EVMDialect::strictAssemblyForEVMObjects(langutil::EVMVersion(langutil::EVMVersion::istanbul()))
);
if (termReason == yulFuzzerUtil::TerminationReason::StepLimitReached)
@@ -105,7 +105,7 @@ DEFINE_PROTO_FUZZER(Program const& _input)
termReason = yulFuzzerUtil::interpret(
os2,
stack.parserResult()->code,
EVMDialect::strictAssemblyForEVMObjects(langutil::EVMVersion()),
EVMDialect::strictAssemblyForEVMObjects(langutil::EVMVersion(langutil::EVMVersion::istanbul())),
(yul::test::yul_fuzzer::yulFuzzerUtil::maxSteps * 4)
);