mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Remove ROL/ROR as they are not part of EIP145 anymore
This commit is contained in:
parent
468d0f6199
commit
afa4a48e37
@ -212,10 +212,6 @@ In the grammar, opcodes are represented as pre-defined identifiers.
|
|||||||
+-------------------------+-----+---+-----------------------------------------------------------------+
|
+-------------------------+-----+---+-----------------------------------------------------------------+
|
||||||
| sar(x, y) | | C | arithmetic shift right x by y bits |
|
| sar(x, y) | | C | arithmetic shift right x by y bits |
|
||||||
+-------------------------+-----+---+-----------------------------------------------------------------+
|
+-------------------------+-----+---+-----------------------------------------------------------------+
|
||||||
| ror(x, y) | | C | rotate right x by y bits |
|
|
||||||
+-------------------------+-----+---+-----------------------------------------------------------------+
|
|
||||||
| rol(x, y) | | C | rotate left x by y bits |
|
|
||||||
+-------------------------+-----+---+-----------------------------------------------------------------+
|
|
||||||
| addmod(x, y, m) | | F | (x + y) % m with arbitrary precision arithmetics |
|
| addmod(x, y, m) | | F | (x + y) % m with arbitrary precision arithmetics |
|
||||||
+-------------------------+-----+---+-----------------------------------------------------------------+
|
+-------------------------+-----+---+-----------------------------------------------------------------+
|
||||||
| mulmod(x, y, m) | | F | (x * y) % m with arbitrary precision arithmetics |
|
| mulmod(x, y, m) | | F | (x * y) % m with arbitrary precision arithmetics |
|
||||||
|
@ -53,8 +53,6 @@ const std::map<std::string, Instruction> dev::solidity::c_instructions =
|
|||||||
{ "SHL", Instruction::SHL },
|
{ "SHL", Instruction::SHL },
|
||||||
{ "SHR", Instruction::SHR },
|
{ "SHR", Instruction::SHR },
|
||||||
{ "SAR", Instruction::SAR },
|
{ "SAR", Instruction::SAR },
|
||||||
{ "ROL", Instruction::ROL },
|
|
||||||
{ "ROR", Instruction::ROR },
|
|
||||||
{ "ADDMOD", Instruction::ADDMOD },
|
{ "ADDMOD", Instruction::ADDMOD },
|
||||||
{ "MULMOD", Instruction::MULMOD },
|
{ "MULMOD", Instruction::MULMOD },
|
||||||
{ "SIGNEXTEND", Instruction::SIGNEXTEND },
|
{ "SIGNEXTEND", Instruction::SIGNEXTEND },
|
||||||
@ -198,8 +196,6 @@ static const std::map<Instruction, InstructionInfo> c_instructionInfo =
|
|||||||
{ Instruction::SHL, { "SHL", 0, 2, 1, false, Tier::VeryLow } },
|
{ Instruction::SHL, { "SHL", 0, 2, 1, false, Tier::VeryLow } },
|
||||||
{ Instruction::SHR, { "SHR", 0, 2, 1, false, Tier::VeryLow } },
|
{ Instruction::SHR, { "SHR", 0, 2, 1, false, Tier::VeryLow } },
|
||||||
{ Instruction::SAR, { "SAR", 0, 2, 1, false, Tier::VeryLow } },
|
{ Instruction::SAR, { "SAR", 0, 2, 1, false, Tier::VeryLow } },
|
||||||
{ Instruction::ROL, { "ROL", 0, 2, 1, false, Tier::VeryLow } },
|
|
||||||
{ Instruction::ROR, { "ROR", 0, 2, 1, false, Tier::VeryLow } },
|
|
||||||
{ Instruction::ADDMOD, { "ADDMOD", 0, 3, 1, false, Tier::Mid } },
|
{ Instruction::ADDMOD, { "ADDMOD", 0, 3, 1, false, Tier::Mid } },
|
||||||
{ Instruction::MULMOD, { "MULMOD", 0, 3, 1, false, Tier::Mid } },
|
{ Instruction::MULMOD, { "MULMOD", 0, 3, 1, false, Tier::Mid } },
|
||||||
{ Instruction::SIGNEXTEND, { "SIGNEXTEND", 0, 2, 1, false, Tier::Low } },
|
{ Instruction::SIGNEXTEND, { "SIGNEXTEND", 0, 2, 1, false, Tier::Low } },
|
||||||
|
@ -64,8 +64,6 @@ enum class Instruction: uint8_t
|
|||||||
SHL, ///< bitwise SHL operation
|
SHL, ///< bitwise SHL operation
|
||||||
SHR, ///< bitwise SHR operation
|
SHR, ///< bitwise SHR operation
|
||||||
SAR, ///< bitwise SAR operation
|
SAR, ///< bitwise SAR operation
|
||||||
ROL, ///< bitwise ROL operation
|
|
||||||
ROR, ///< bitwise ROR operation
|
|
||||||
|
|
||||||
KECCAK256 = 0x20, ///< compute KECCAK-256 hash
|
KECCAK256 = 0x20, ///< compute KECCAK-256 hash
|
||||||
|
|
||||||
|
@ -551,9 +551,7 @@ void AsmAnalyzer::warnOnInstructions(solidity::Instruction _instr, SourceLocatio
|
|||||||
static set<solidity::Instruction> experimentalInstructions{
|
static set<solidity::Instruction> experimentalInstructions{
|
||||||
solidity::Instruction::SHL,
|
solidity::Instruction::SHL,
|
||||||
solidity::Instruction::SHR,
|
solidity::Instruction::SHR,
|
||||||
solidity::Instruction::SAR,
|
solidity::Instruction::SAR
|
||||||
solidity::Instruction::ROL,
|
|
||||||
solidity::Instruction::ROR
|
|
||||||
};
|
};
|
||||||
if (experimentalInstructions.count(_instr))
|
if (experimentalInstructions.count(_instr))
|
||||||
m_errorReporter.warning(
|
m_errorReporter.warning(
|
||||||
|
Loading…
Reference in New Issue
Block a user