aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/inlineasm/AsmData.h
diff options
context:
space:
mode:
authorchriseth <c@ethdev.com>2017-02-02 04:40:50 +0800
committerchriseth <c@ethdev.com>2017-03-03 22:41:01 +0800
commit98e343b3fc11f3e94297b016c3f625e3b319b09b (patch)
treec5ff0283866f2aed81ffafb2cdfc0c58fd9dc828 /libsolidity/inlineasm/AsmData.h
parentfd62adebf3e594298c171e43e78153dbefc42759 (diff)
downloaddexon-solidity-98e343b3fc11f3e94297b016c3f625e3b319b09b.tar.gz
dexon-solidity-98e343b3fc11f3e94297b016c3f625e3b319b09b.tar.zst
dexon-solidity-98e343b3fc11f3e94297b016c3f625e3b319b09b.zip
Parsing of labels with stack info.
Diffstat (limited to 'libsolidity/inlineasm/AsmData.h')
-rw-r--r--libsolidity/inlineasm/AsmData.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/libsolidity/inlineasm/AsmData.h b/libsolidity/inlineasm/AsmData.h
index d61b5803..5969bf96 100644
--- a/libsolidity/inlineasm/AsmData.h
+++ b/libsolidity/inlineasm/AsmData.h
@@ -42,8 +42,8 @@ struct Literal { SourceLocation location; bool isNumber; std::string value; };
/// External / internal identifier or label reference
struct Identifier { SourceLocation location; std::string name; };
struct FunctionalInstruction;
-/// Jump label ("name:")
-struct Label { SourceLocation location; std::string name; };
+/// Jump label ("name:" or "name [x, y, z]:" or "name [-3]:")
+struct Label { SourceLocation location; std::string name; std::vector<std::string> stackInfo; };
/// Assignemnt (":= x", moves stack top into x, potentially multiple slots)
struct Assignment { SourceLocation location; Identifier variableName; };
struct FunctionalAssignment;