mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Checks for overflow/underflow after add/sub operations.
This commit is contained in:
@@ -19,6 +19,6 @@ contract c {
|
||||
// compileToEwasm: also
|
||||
// ----
|
||||
// test() -> 0xffffffff, 0x0000000000000000000000000a00090008000700060005000400030002000100, 0x0000000000000000000000000000000000000000000000000000000000000000
|
||||
// gas irOptimized: 124757
|
||||
// gas legacy: 186184
|
||||
// gas legacyOptimized: 165682
|
||||
// gas irOptimized: 124817
|
||||
// gas legacy: 186028
|
||||
// gas legacyOptimized: 165692
|
||||
|
||||
@@ -38,10 +38,10 @@ contract c {
|
||||
// compileViaYul: true
|
||||
// ----
|
||||
// test1(uint256[][]): 0x20, 2, 0x40, 0x40, 2, 23, 42 -> 2, 65
|
||||
// gas irOptimized: 180766
|
||||
// gas irOptimized: 180769
|
||||
// test2(uint256[][2]): 0x20, 0x40, 0x40, 2, 23, 42 -> 2, 65
|
||||
// gas irOptimized: 157564
|
||||
// gas irOptimized: 157567
|
||||
// test3(uint256[2][]): 0x20, 2, 23, 42, 23, 42 -> 2, 65
|
||||
// gas irOptimized: 134630
|
||||
// gas irOptimized: 134633
|
||||
// test4(uint256[2][2]): 23, 42, 23, 42 -> 65
|
||||
// gas irOptimized: 111268
|
||||
// gas irOptimized: 111271
|
||||
|
||||
@@ -38,12 +38,12 @@ contract Test {
|
||||
}
|
||||
// ----
|
||||
// test() -> 24
|
||||
// gas irOptimized: 226694
|
||||
// gas legacy: 227133
|
||||
// gas legacyOptimized: 226547
|
||||
// gas irOptimized: 226700
|
||||
// gas legacy: 227121
|
||||
// gas legacyOptimized: 226557
|
||||
// test1() -> 3
|
||||
// test2() -> 6
|
||||
// test3() -> 24
|
||||
// gas irOptimized: 133254
|
||||
// gas legacy: 134295
|
||||
// gas legacyOptimized: 133383
|
||||
// gas irOptimized: 133260
|
||||
// gas legacy: 134283
|
||||
// gas legacyOptimized: 133393
|
||||
|
||||
@@ -14,9 +14,9 @@ contract c {
|
||||
// ----
|
||||
// storageEmpty -> 1
|
||||
// fill() ->
|
||||
// gas irOptimized: 519616
|
||||
// gas legacy: 521710
|
||||
// gas legacyOptimized: 516922
|
||||
// gas irOptimized: 519490
|
||||
// gas legacy: 521584
|
||||
// gas legacyOptimized: 517027
|
||||
// storageEmpty -> 0
|
||||
// halfClear() ->
|
||||
// storageEmpty -> 0
|
||||
|
||||
@@ -12,9 +12,9 @@ contract c {
|
||||
// ----
|
||||
// storageEmpty -> 1
|
||||
// fill() ->
|
||||
// gas irOptimized: 465440
|
||||
// gas legacy: 471400
|
||||
// gas legacyOptimized: 467400
|
||||
// gas irOptimized: 465380
|
||||
// gas legacy: 471280
|
||||
// gas legacyOptimized: 467500
|
||||
// storageEmpty -> 0
|
||||
// clear() ->
|
||||
// storageEmpty -> 1
|
||||
|
||||
@@ -23,7 +23,7 @@ contract c {
|
||||
}
|
||||
// ----
|
||||
// test() -> 1, 2, 3
|
||||
// gas irOptimized: 2280132
|
||||
// gas irOptimized: 2280147
|
||||
// gas legacy: 2273434
|
||||
// gas legacyOptimized: 2261820
|
||||
// gas legacyOptimized: 2261844
|
||||
// storageEmpty -> 1
|
||||
|
||||
@@ -18,7 +18,7 @@ contract c {
|
||||
}
|
||||
// ----
|
||||
// test() -> 38, 28, 18
|
||||
// gas irOptimized: 186364
|
||||
// gas irOptimized: 186370
|
||||
// gas legacy: 189492
|
||||
// gas legacyOptimized: 178294
|
||||
// gas legacyOptimized: 178318
|
||||
// storageEmpty -> 1
|
||||
|
||||
@@ -18,7 +18,7 @@ contract c {
|
||||
}
|
||||
// ----
|
||||
// test() -> 20, 10
|
||||
// gas irOptimized: 158009
|
||||
// gas irOptimized: 158020
|
||||
// gas legacy: 159279
|
||||
// gas legacyOptimized: 152921
|
||||
// gas legacyOptimized: 152937
|
||||
// storageEmpty -> 1
|
||||
|
||||
@@ -16,7 +16,7 @@ contract c {
|
||||
}
|
||||
// ----
|
||||
// test() -> true
|
||||
// gas irOptimized: 180539
|
||||
// gas legacy: 228685
|
||||
// gas legacyOptimized: 209662
|
||||
// gas irOptimized: 176111
|
||||
// gas legacy: 224093
|
||||
// gas legacyOptimized: 205152
|
||||
// storageEmpty -> 1
|
||||
|
||||
@@ -15,6 +15,6 @@ contract c {
|
||||
}
|
||||
// ----
|
||||
// test() -> 0
|
||||
// gas irOptimized: 173650
|
||||
// gas irOptimized: 174126
|
||||
// gas legacy: 216790
|
||||
// gas legacyOptimized: 203886
|
||||
// gas legacyOptimized: 204003
|
||||
|
||||
Reference in New Issue
Block a user