Yul interpreter: Smaller execution timeout for tests and additional test cases

This commit is contained in:
Bhargava Shastry
2020-12-03 10:08:41 +01:00
parent 088b694f0b
commit e1b44500dd
5 changed files with 80 additions and 3 deletions
+7 -1
View File
@@ -104,12 +104,18 @@ DEFINE_PROTO_FUZZER(Program const& _input)
return;
stack.optimize();
yulFuzzerUtil::interpret(
termReason = yulFuzzerUtil::interpret(
os2,
stack.parserResult()->code,
EVMDialect::strictAssemblyForEVMObjects(version)
);
if (
termReason == yulFuzzerUtil::TerminationReason::StepLimitReached ||
termReason == yulFuzzerUtil::TerminationReason::TraceLimitReached
)
return;
bool isTraceEq = (os1.str() == os2.str());
yulAssert(isTraceEq, "Interpreted traces for optimized and unoptimized code differ.");
return;