Skip to content

Commit

Permalink
⚡️ Optimize RedBlackTreeLib (#820)
Browse files Browse the repository at this point in the history
  • Loading branch information
Vectorized committed Feb 6, 2024
1 parent 330d9ac commit 880ab6d
Show file tree
Hide file tree
Showing 2 changed files with 151 additions and 176 deletions.
48 changes: 24 additions & 24 deletions .gas-snapshot
Original file line number Diff line number Diff line change
Expand Up @@ -248,15 +248,15 @@ ERC4337Test:testValidateUserOp() (gas: 491555)
ERC4337Test:test__codesize() (gas: 54768)
ERC4626Test:testDepositWithNoApprovalReverts() (gas: 16371)
ERC4626Test:testDepositWithNotEnoughApprovalReverts() (gas: 89884)
ERC4626Test:testDifferentialFullMulDiv(uint256,uint256,uint256) (runs: 256, μ: 3325, ~: 3185)
ERC4626Test:testDifferentialFullMulDiv(uint256,uint256,uint256) (runs: 256, μ: 3322, ~: 3185)
ERC4626Test:testMetadata() (gas: 15439)
ERC4626Test:testMintWithNoApprovalReverts() (gas: 16345)
ERC4626Test:testMintZero() (gas: 54317)
ERC4626Test:testMultipleMintDepositRedeemWithdraw() (gas: 425481)
ERC4626Test:testRedeemWithNoShareAmountReverts() (gas: 10918)
ERC4626Test:testRedeemWithNotEnoughShareAmountReverts() (gas: 142915)
ERC4626Test:testSingleDepositWithdraw(uint128) (runs: 256, μ: 202651, ~: 202662)
ERC4626Test:testSingleMintRedeem(uint128) (runs: 256, μ: 201578, ~: 201589)
ERC4626Test:testSingleMintRedeem(uint128) (runs: 256, μ: 201579, ~: 201589)
ERC4626Test:testTryGetAssetDecimals() (gas: 30466616)
ERC4626Test:testUseVirtualShares() (gas: 2439368)
ERC4626Test:testVaultInteractionsForSomeoneElse() (gas: 296164)
Expand Down Expand Up @@ -922,29 +922,29 @@ ReceiverTest:testOnERC1155BatchReceived() (gas: 48975)
ReceiverTest:testOnERC1155Received() (gas: 46717)
ReceiverTest:testOnERC721Received() (gas: 64127)
ReceiverTest:test__codesize() (gas: 3310)
RedBlackTreeLibTest:testRedBlackTreeBenchUint160() (gas: 3433600)
RedBlackTreeLibTest:testRedBlackTreeBenchUint256() (gas: 5847065)
RedBlackTreeLibTest:testRedBlackTreeInsertAndRemove(uint256) (runs: 256, μ: 670224, ~: 501333)
RedBlackTreeLibTest:testRedBlackTreeInsertAndRemove2(uint256) (runs: 256, μ: 420510, ~: 381882)
RedBlackTreeLibTest:testRedBlackTreeInsertAndRemove3() (gas: 21571156)
RedBlackTreeLibTest:testRedBlackTreeInsertBenchStep() (gas: 3709258)
RedBlackTreeLibTest:testRedBlackTreeInsertBenchUint160() (gas: 3474876)
RedBlackTreeLibTest:testRedBlackTreeInsertBenchUint256() (gas: 6374406)
RedBlackTreeLibTest:testRedBlackTreeInsertOneGas() (gas: 45601)
RedBlackTreeLibTest:testRedBlackTreeInsertTenGas() (gas: 283211)
RedBlackTreeLibTest:testRedBlackTreeInsertThreeGas() (gas: 96322)
RedBlackTreeLibTest:testRedBlackTreeInsertTwoGas() (gas: 69871)
RedBlackTreeLibTest:testRedBlackTreeNearest(uint256) (runs: 256, μ: 246019, ~: 227676)
RedBlackTreeLibTest:testRedBlackTreeNearestAfter(uint256) (runs: 256, μ: 249767, ~: 249005)
RedBlackTreeLibTest:testRedBlackTreeNearestBefore(uint256) (runs: 256, μ: 236444, ~: 195558)
RedBlackTreeLibTest:testRedBlackTreePointers() (gas: 91971)
RedBlackTreeLibTest:testRedBlackTreeBenchUint160() (gas: 3429423)
RedBlackTreeLibTest:testRedBlackTreeBenchUint256() (gas: 5843130)
RedBlackTreeLibTest:testRedBlackTreeInsertAndRemove(uint256) (runs: 256, μ: 627514, ~: 487609)
RedBlackTreeLibTest:testRedBlackTreeInsertAndRemove2(uint256) (runs: 256, μ: 420920, ~: 390160)
RedBlackTreeLibTest:testRedBlackTreeInsertAndRemove3() (gas: 21546528)
RedBlackTreeLibTest:testRedBlackTreeInsertBenchStep() (gas: 3703676)
RedBlackTreeLibTest:testRedBlackTreeInsertBenchUint160() (gas: 3469294)
RedBlackTreeLibTest:testRedBlackTreeInsertBenchUint256() (gas: 6368914)
RedBlackTreeLibTest:testRedBlackTreeInsertOneGas() (gas: 45564)
RedBlackTreeLibTest:testRedBlackTreeInsertTenGas() (gas: 282751)
RedBlackTreeLibTest:testRedBlackTreeInsertThreeGas() (gas: 96193)
RedBlackTreeLibTest:testRedBlackTreeInsertTwoGas() (gas: 69797)
RedBlackTreeLibTest:testRedBlackTreeNearest(uint256) (runs: 256, μ: 228165, ~: 224911)
RedBlackTreeLibTest:testRedBlackTreeNearestAfter(uint256) (runs: 256, μ: 251011, ~: 248814)
RedBlackTreeLibTest:testRedBlackTreeNearestBefore(uint256) (runs: 256, μ: 232084, ~: 195909)
RedBlackTreeLibTest:testRedBlackTreePointers() (gas: 91897)
RedBlackTreeLibTest:testRedBlackTreeRejectsEmptyValue() (gas: 3238)
RedBlackTreeLibTest:testRedBlackTreeRemoveViaPointer() (gas: 58295)
RedBlackTreeLibTest:testRedBlackTreeTreeFullReverts() (gas: 50372)
RedBlackTreeLibTest:testRedBlackTreeTryInsertAndRemove() (gas: 56220)
RedBlackTreeLibTest:testRedBlackTreeValues() (gas: 191728)
RedBlackTreeLibTest:testRedBlackTreeValues(uint256) (runs: 256, μ: 360182, ~: 242333)
RedBlackTreeLibTest:test__codesize() (gas: 14162)
RedBlackTreeLibTest:testRedBlackTreeRemoveViaPointer() (gas: 58172)
RedBlackTreeLibTest:testRedBlackTreeTreeFullReverts() (gas: 50335)
RedBlackTreeLibTest:testRedBlackTreeTryInsertAndRemove() (gas: 56139)
RedBlackTreeLibTest:testRedBlackTreeValues() (gas: 191599)
RedBlackTreeLibTest:testRedBlackTreeValues(uint256) (runs: 256, μ: 383999, ~: 267070)
RedBlackTreeLibTest:test__codesize() (gas: 14087)
ReentrancyGuardTest:testRecursiveDirectUnguardedCall() (gas: 34254)
ReentrancyGuardTest:testRecursiveIndirectUnguardedCall() (gas: 47771)
ReentrancyGuardTest:testRevertGuardLocked() (gas: 53917)
Expand Down
Loading

0 comments on commit 880ab6d

Please sign in to comment.