Skip to content

Commit c240214

Browse files
committed
more return optimizaton
breaking change: requireRange no longer returns its input
1 parent ab00e54 commit c240214

File tree

4 files changed

+416
-412
lines changed

4 files changed

+416
-412
lines changed

.gas-snapshot

Lines changed: 47 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,44 @@
11
ArrayTest:test_decodeEmptyArray() (gas: 3436)
22
ArrayTest:test_decodeLargeArray() (gas: 3480)
3-
ArrayTest:test_decodeMixedArray() (gas: 6558)
3+
ArrayTest:test_decodeMixedArray() (gas: 6463)
44
ArrayTest:test_decodeNestedArray() (gas: 7342)
55
ArrayTest:test_decodeSingleElementArray() (gas: 4226)
6-
BytesTest:test_Bytes32_short() (gas: 4275)
7-
BytesTest:test_decodeEmptyBytes() (gas: 3861)
8-
BytesTest:test_decodeLongBytes() (gas: 3868)
9-
BytesTest:test_decodeMediumBytes() (gas: 992)
10-
BytesTest:test_decodeShortBytes() (gas: 3861)
11-
BytesTest:test_skipBytes() (gas: 780)
6+
BytesTest:test_Bytes32_short() (gas: 4183)
7+
BytesTest:test_decodeEmptyBytes() (gas: 3772)
8+
BytesTest:test_decodeLongBytes() (gas: 3779)
9+
BytesTest:test_decodeMediumBytes() (gas: 903)
10+
BytesTest:test_decodeShortBytes() (gas: 3772)
11+
BytesTest:test_skipBytes() (gas: 774)
1212
ComparisonTest:test_decodeArrayU8_CBORDecoder() (gas: 5274)
1313
ComparisonTest:test_decodeArrayU8_ReadCbor() (gas: 2334)
1414
ComparisonTest:test_decodeFalse_CBORDecoder() (gas: 916)
1515
ComparisonTest:test_decodeFalse_ReadCbor() (gas: 425)
1616
ComparisonTest:test_decodeFixedArray_CBORDecoder() (gas: 9207)
17-
ComparisonTest:test_decodeFixedArray_ReadCbor() (gas: 4402)
17+
ComparisonTest:test_decodeFixedArray_ReadCbor() (gas: 4307)
1818
ComparisonTest:test_decodeInteger_CBORDecoder() (gas: 884)
1919
ComparisonTest:test_decodeInteger_ReadCbor() (gas: 554)
2020
ComparisonTest:test_decodeNull_CBORDecoder() (gas: 396)
2121
ComparisonTest:test_decodeNull_ReadCbor() (gas: 240)
2222
ComparisonTest:test_decodeStringWithWeirdChar_CBORDecoder() (gas: 2356)
23-
ComparisonTest:test_decodeStringWithWeirdChar_ReadCbor() (gas: 1052)
23+
ComparisonTest:test_decodeStringWithWeirdChar_ReadCbor() (gas: 957)
2424
ComparisonTest:test_decodeString_CBORDecoder() (gas: 3869)
25-
ComparisonTest:test_decodeString_ReadCbor() (gas: 1125)
25+
ComparisonTest:test_decodeString_ReadCbor() (gas: 1030)
2626
ComparisonTest:test_decodeTrue_CBORDecoder() (gas: 937)
2727
ComparisonTest:test_decodeTrue_ReadCbor() (gas: 483)
2828
HeaderTest:test_header() (gas: 4270)
2929
HeaderTest:test_header32_u16() (gas: 3637)
3030
HeaderTest:test_header32_u32() (gas: 3611)
3131
MapTest:test_decodeEmptyMap() (gas: 539)
32-
MapTest:test_decodeNestedMap() (gas: 4369)
33-
MapTest:test_decodeSingleKeyMap() (gas: 5909)
34-
MapTest:test_deeplyNestedStructure() (gas: 10262)
35-
NIntTest:test_decodeLongNInt8() (gas: 3647)
36-
NIntTest:test_decodeNInt16() (gas: 3806)
37-
NIntTest:test_decodeNInt32() (gas: 3789)
38-
NIntTest:test_decodeNInt64() (gas: 3826)
39-
NIntTest:test_decodeNInt8() (gas: 3668)
40-
NIntTest:test_decodeShortNInt8() (gas: 3571)
41-
NIntTest:test_decodeSmallNInts() (gas: 4410)
32+
MapTest:test_decodeNestedMap() (gas: 3977)
33+
MapTest:test_decodeSingleKeyMap() (gas: 5814)
34+
MapTest:test_deeplyNestedStructure() (gas: 9968)
35+
NIntTest:test_decodeLongNInt8() (gas: 3646)
36+
NIntTest:test_decodeNInt16() (gas: 3805)
37+
NIntTest:test_decodeNInt32() (gas: 3788)
38+
NIntTest:test_decodeNInt64() (gas: 3825)
39+
NIntTest:test_decodeNInt8() (gas: 3667)
40+
NIntTest:test_decodeShortNInt8() (gas: 3570)
41+
NIntTest:test_decodeSmallNInts() (gas: 4408)
4242
PeekTest:test_isArray_false() (gas: 3181)
4343
PeekTest:test_isArray_true() (gas: 3160)
4444
PeekTest:test_isBool_false() (gas: 3158)
@@ -68,37 +68,37 @@ PeekTest:test_isUInt_false() (gas: 3202)
6868
PeekTest:test_isUInt_true() (gas: 3227)
6969
PeekTest:test_isUndefined_false() (gas: 3240)
7070
PeekTest:test_isUndefined_true() (gas: 3162)
71-
RangeTest:test_requireComplete() (gas: 321)
72-
RangeTest:test_requireRange() (gas: 3712)
73-
ReadBignum_Test:test_Integer() (gas: 14048)
74-
ReadBignum_Test:test_NInt256_max() (gas: 4713)
75-
ReadBignum_Test:test_NInt256_middle() (gas: 5973)
76-
ReadBignum_Test:test_NInt256_multi() (gas: 4206)
77-
ReadBignum_Test:test_NInt256_random(int256) (runs: 256, μ: 5616, ~: 5616)
78-
ReadBignum_Test:test_NInt256_single() (gas: 4207)
79-
ReadBignum_Test:test_UInt256_max() (gas: 4522)
80-
ReadBignum_Test:test_UInt256_middle() (gas: 5789)
81-
ReadBignum_Test:test_UInt256_multi() (gas: 4088)
82-
ReadBignum_Test:test_UInt256_random(uint256) (runs: 256, μ: 4581, ~: 4581)
83-
ReadBignum_Test:test_UInt256_single() (gas: 4381)
84-
ReadCidSha256_Test:test_Cid() (gas: 869)
85-
ReadCidSha256_Test:test_Cid_multicodec_raw() (gas: 815)
86-
ReadCidSha256_Test:test_Cid_random(uint256) (runs: 256, μ: 4276, ~: 4276)
71+
RangeTest:test_requireComplete() (gas: 322)
72+
RangeTest:test_requireRange() (gas: 387)
73+
ReadBignum_Test:test_Integer() (gas: 12961)
74+
ReadBignum_Test:test_NInt256_max() (gas: 4699)
75+
ReadBignum_Test:test_NInt256_middle() (gas: 5870)
76+
ReadBignum_Test:test_NInt256_multi() (gas: 4192)
77+
ReadBignum_Test:test_NInt256_random(int256) (runs: 256, μ: 5602, ~: 5602)
78+
ReadBignum_Test:test_NInt256_single() (gas: 4193)
79+
ReadBignum_Test:test_UInt256_max() (gas: 4508)
80+
ReadBignum_Test:test_UInt256_middle() (gas: 5686)
81+
ReadBignum_Test:test_UInt256_multi() (gas: 4074)
82+
ReadBignum_Test:test_UInt256_random(uint256) (runs: 256, μ: 4567, ~: 4567)
83+
ReadBignum_Test:test_UInt256_single() (gas: 4367)
84+
ReadCidSha256_Test:test_Cid() (gas: 853)
85+
ReadCidSha256_Test:test_Cid_multicodec_raw() (gas: 799)
86+
ReadCidSha256_Test:test_Cid_random(uint256) (runs: 256, μ: 4260, ~: 4260)
8787
ReadCidSha256_Test:test_NullableCid_nullCbor() (gas: 3440)
88-
ReadCidSha256_Test:test_NullableCid_random(uint256) (runs: 256, μ: 4137, ~: 4145)
88+
ReadCidSha256_Test:test_NullableCid_random(uint256) (runs: 256, μ: 4121, ~: 4129)
8989
SimpleTest:test_decodeFalse() (gas: 3305)
9090
SimpleTest:test_decodeTrue() (gas: 3311)
91-
SimpleTest:test_skipNull() (gas: 431)
92-
SimpleTest:test_skipUndefined() (gas: 474)
91+
SimpleTest:test_skipNull() (gas: 427)
92+
SimpleTest:test_skipUndefined() (gas: 470)
9393
StringTest:test_String1() (gas: 3368)
94-
StringTest:test_String32_short() (gas: 4254)
95-
StringTest:test_decodeEmptyString() (gas: 3807)
96-
StringTest:test_decodeLongString() (gas: 3851)
97-
StringTest:test_decodeMediumString() (gas: 992)
98-
StringTest:test_decodeShortString() (gas: 3871)
99-
StringTest:test_skipString() (gas: 782)
100-
TagTest:test_decodeExpectedTag() (gas: 682)
101-
TagTest:test_decodeTag() (gas: 3591)
94+
StringTest:test_String32_short() (gas: 4162)
95+
StringTest:test_decodeEmptyString() (gas: 3718)
96+
StringTest:test_decodeLongString() (gas: 3762)
97+
StringTest:test_decodeMediumString() (gas: 903)
98+
StringTest:test_decodeShortString() (gas: 3782)
99+
StringTest:test_skipString() (gas: 776)
100+
TagTest:test_decodeExpectedTag() (gas: 678)
101+
TagTest:test_decodeTag() (gas: 3590)
102102
UIntTest:test_decodeLongUInt8() (gas: 3506)
103103
UIntTest:test_decodeShortUInt8() (gas: 3451)
104104
UIntTest:test_decodeSmallInts() (gas: 4152)

0 commit comments

Comments
 (0)