Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions docs/using-the-compiler.rst
Original file line number Diff line number Diff line change
Expand Up @@ -363,10 +363,6 @@ Input Description
// petersburg, istanbul, berlin, london, paris, shanghai, cancun,
// prague, osaka (default), or @future (experimental).
"evmVersion": "osaka",
// EVM Object Format version to compile for (optional, experimental).
// Currently the only valid value is 1. If not specified, legacy non-EOF bytecode will be generated.
// Requires `evmVersion` >= osaka.
"eofVersion": null,
// Optional: Change compilation pipeline to go through the Yul intermediate representation.
// This is false by default.
"viaIR": true,
Expand Down Expand Up @@ -774,8 +770,6 @@ The table below details all currently available experimental features.
+-----------------------+--------------------------+------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| IR AST | ``ir-ast`` | no | ``--ir-ast-json``, ``--ir-optimized-ast-json`` |
+-----------------------+--------------------------+------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| EOF | ``eof`` | yes | ``--experimental-eof-version`` |
+-----------------------+--------------------------+------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| Non-mainnet EVMs | ``evm`` | yes | ``--evm-version <version name>`` |
+-----------------------+--------------------------+------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| Ethdebug | ``ethdebug`` | no | ``--ethdebug-resources``, ``--ethdebug-compilation``, ``--ethdebug-program``, ``--ethdebug-program-runtime``, ``--debug-info ethdebug`` |
Expand Down
5 changes: 2 additions & 3 deletions solc/CommandLineInterface.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -903,7 +903,7 @@ void CommandLineInterface::assembleFromEVMAssemblyJSON()

auto evmAssemblyStack = std::make_unique<evmasm::EVMAssemblyStack>(
m_options.output.evmVersion,
m_options.output.eofVersion,
std::nullopt,
evmasm::Assembly::OptimiserSettings::translateSettings(
m_options.optimiserSettings()
)
Expand Down Expand Up @@ -950,7 +950,6 @@ void CommandLineInterface::compile()
m_compiler->setViaIR(m_options.output.viaIR);
m_compiler->setViaSSACFG(m_options.output.viaSSACFG);
m_compiler->setEVMVersion(m_options.output.evmVersion);
m_compiler->setEOFVersion(m_options.output.eofVersion);
m_compiler->setRevertStringBehaviour(m_options.output.revertStrings);
if (m_options.output.debugInfoSelection.has_value())
m_compiler->selectDebugInfo(m_options.output.debugInfoSelection.value());
Expand Down Expand Up @@ -1308,7 +1307,7 @@ void CommandLineInterface::assembleYul(yul::YulStack::Machine _targetMachine)
{
auto& stack = yulStacks[sourceUnitName] = yul::YulStack(
m_options.output.evmVersion,
m_options.output.eofVersion,
std::nullopt,
m_options.optimiserSettings(),
m_options.output.debugInfoSelection.has_value() ?
m_options.output.debugInfoSelection.value() :
Expand Down
23 changes: 0 additions & 23 deletions solc/CommandLineParser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,6 @@ static std::string const g_strAssemble = "assemble";
static std::string const g_strCombinedJson = "combined-json";
static std::string const g_strEVM = "evm";
static std::string const g_strEVMVersion = "evm-version";
static std::string const g_strEOFVersion = "experimental-eof-version";
static std::string const g_strViaIR = "via-ir";
static std::string const g_strViaSSACFG = "via-ssa-cfg";
static std::string const g_strExperimentalViaIR = "experimental-via-ir";
Expand Down Expand Up @@ -172,7 +171,6 @@ std::vector<std::string> const& CommandLineParser::experimentalOptionNames()
"ethdebug-compilation",
"ethdebug-program",
"ethdebug-program-runtime",
g_strEOFVersion,
g_strViaSSACFG,
};
return names;
Expand Down Expand Up @@ -533,8 +531,6 @@ void CommandLineParser::parseOutputSelection()
"The following outputs are not supported in " + g_inputModeName.at(m_options.input.mode) + " mode: " +
joinOptionNames(unsupportedOutputs) + "."
);

// TODO: restrict EOF version to correct EVM version.
}

po::options_description CommandLineParser::optionsDescription()
Expand Down Expand Up @@ -626,13 +622,6 @@ General Information)").c_str(),
)
;
outputOptions.add_options()
(
g_strEOFVersion.c_str(),
// Declared as uint64_t, since uint8_t will be parsed as character by boost.
po::value<uint64_t>()->value_name("version")->implicit_value(1),
"(experimental) Select desired EOF version. Currently the only valid value is 1. "
"If not specified, non-EOF bytecode will be generated."
)
(
g_strExperimentalViaIR.c_str(),
"Deprecated synonym of --via-ir."
Expand Down Expand Up @@ -1298,18 +1287,6 @@ void CommandLineParser::processArgs()
m_options.output.evmVersion = *versionOption;
}

if (m_args.count(g_strEOFVersion))
{
// Request as uint64_t, since uint8_t will be parsed as character by boost.
uint64_t versionOption = m_args[g_strEOFVersion].as<uint64_t>();
if (versionOption != 1)
solThrow(CommandLineValidationError, "Invalid option for --" + g_strEOFVersion + ": " + std::to_string(versionOption));
m_options.output.eofVersion = 1;
}

if (m_options.output.eofVersion.has_value() && !m_options.output.evmVersion.supportsEOF())
solThrow(CommandLineValidationError, "EOF is not supported by EVM versions earlier than " + EVMVersion::firstWithEOF().name() + ".");

if (m_args.count(g_strNoOptimizeYul) > 0 && m_args.count(g_strOptimizeYul) > 0)
solThrow(
CommandLineValidationError,
Expand Down
1 change: 0 additions & 1 deletion solc/CommandLineParser.h
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,6 @@ struct CommandLineOptions
RevertStrings revertStrings = RevertStrings::Default;
std::optional<langutil::DebugInfoSelection> debugInfoSelection;
CompilerStack::State stopAfter = CompilerStack::State::CompilationSuccessful;
std::optional<uint8_t> eofVersion;
} output;

struct Assembly
Expand Down
1 change: 0 additions & 1 deletion test/cmdlineTests/eof_unavailable_before_osaka/args

This file was deleted.

1 change: 0 additions & 1 deletion test/cmdlineTests/eof_unavailable_before_osaka/err

This file was deleted.

1 change: 0 additions & 1 deletion test/cmdlineTests/eof_unavailable_before_osaka/exit

This file was deleted.

4 changes: 0 additions & 4 deletions test/cmdlineTests/eof_unavailable_before_osaka/input.sol

This file was deleted.

1 change: 0 additions & 1 deletion test/cmdlineTests/ethdebug_eof_container_osaka/args

This file was deleted.

6 changes: 0 additions & 6 deletions test/cmdlineTests/ethdebug_eof_container_osaka/input.sol

This file was deleted.

Loading