aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/codegen
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2018-12-10 23:14:33 +0800
committerGitHub <noreply@github.com>2018-12-10 23:14:33 +0800
commit871ea22bb9158e23254406d21673cfbeda2d7138 (patch)
treed2a3e88b0c22ee008a0bd480fdf78581d7f5eb67 /libsolidity/codegen
parent055c5fe173b90b7d07f1170de5d7018140296f89 (diff)
parentb05d33d7714c5dbbb034d29b2eea8171807d093b (diff)
downloaddexon-solidity-871ea22bb9158e23254406d21673cfbeda2d7138.tar
dexon-solidity-871ea22bb9158e23254406d21673cfbeda2d7138.tar.gz
dexon-solidity-871ea22bb9158e23254406d21673cfbeda2d7138.tar.bz2
dexon-solidity-871ea22bb9158e23254406d21673cfbeda2d7138.tar.lz
dexon-solidity-871ea22bb9158e23254406d21673cfbeda2d7138.tar.xz
dexon-solidity-871ea22bb9158e23254406d21673cfbeda2d7138.tar.zst
dexon-solidity-871ea22bb9158e23254406d21673cfbeda2d7138.zip
Merge pull request #5008 from liangdzou/yul_stack_reuse
Reuse stack slots in Yul codegen
Diffstat (limited to 'libsolidity/codegen')
-rw-r--r--libsolidity/codegen/AsmCodeGen.cpp5
-rw-r--r--libsolidity/codegen/AsmCodeGen.h3
2 files changed, 6 insertions, 2 deletions
diff --git a/libsolidity/codegen/AsmCodeGen.cpp b/libsolidity/codegen/AsmCodeGen.cpp
index dfcc900b..3f770f62 100644
--- a/libsolidity/codegen/AsmCodeGen.cpp
+++ b/libsolidity/codegen/AsmCodeGen.cpp
@@ -179,13 +179,16 @@ void CodeGenerator::assemble(
AsmAnalysisInfo& _analysisInfo,
eth::Assembly& _assembly,
ExternalIdentifierAccess const& _identifierAccess,
- bool _useNamedLabelsForFunctions
+ bool _useNamedLabelsForFunctions,
+ bool _optimize
)
{
EthAssemblyAdapter assemblyAdapter(_assembly);
CodeTransform(
assemblyAdapter,
_analysisInfo,
+ _parsedData,
+ _optimize,
false,
false,
_identifierAccess,
diff --git a/libsolidity/codegen/AsmCodeGen.h b/libsolidity/codegen/AsmCodeGen.h
index 4c6d97f4..303d32ee 100644
--- a/libsolidity/codegen/AsmCodeGen.h
+++ b/libsolidity/codegen/AsmCodeGen.h
@@ -85,7 +85,8 @@ public:
yul::AsmAnalysisInfo& _analysisInfo,
dev::eth::Assembly& _assembly,
yul::ExternalIdentifierAccess const& _identifierAccess = yul::ExternalIdentifierAccess(),
- bool _useNamedLabelsForFunctions = false
+ bool _useNamedLabelsForFunctions = false,
+ bool _optimize = false
);
};