Skip to content

Latest commit

 

History

History
65 lines (48 loc) · 1.82 KB

seyni-G.md

File metadata and controls

65 lines (48 loc) · 1.82 KB

Gas Optimizations

Optimizer settings:

optimizer: {
                enabled: true,
                runs: 200
            }

[G-01] Use unchecked increment in DiamonCut.sol

Methods $\Delta$ Average gas
executeDiamondCutProposal 1 227
diamondCut 549
Deployment $\Delta$ Average gas
DiamondCutFacet 12 518
DiamondCutTest 14 257
DiamondProxy 17 123

For instance, change this:

        for (uint256 i = 0; i < facetCutsLength; ++i) {
            ...
            }

To this:

        for (uint256 i = 0; i < facetCutsLength; ) {
            ...
            unchecked{
                ++i;
            }

Diamond.sol#L94

        for (uint256 i = 0; i < facetCutsLength; ++i) {

Diamond.sol#L132

        for (uint256 i = 0; i < selectorsLength; ++i) {

Diamond.sol#L153

        for (uint256 i = 0; i < selectorsLength; ++i) {

Diamond.sol#L173

        for (uint256 i = 0; i < selectorsLength; ++i) {