aboutsummaryrefslogtreecommitdiffstats
path: root/common/math
diff options
context:
space:
mode:
authorJeffrey Wilcke <jeffrey@ethereum.org>2017-02-08 20:39:26 +0800
committerJeffrey Wilcke <jeffrey@ethereum.org>2017-02-13 22:15:12 +0800
commit57f4e9025757254536a738bb4771712038f1e763 (patch)
tree5d2f140139f3763a7da3c20a88acff96b58ec8ad /common/math
parentf8f428cc18c5f70814d7b3937128781bac14bffd (diff)
downloaddexon-57f4e9025757254536a738bb4771712038f1e763.tar.gz
dexon-57f4e9025757254536a738bb4771712038f1e763.tar.zst
dexon-57f4e9025757254536a738bb4771712038f1e763.zip
Revert "params: core, core/vm, miner: 64bit gas instructions (#3514)"
This reverts commit 8b57c494908637a5c0e74f8f7a13b3218e026757.
Diffstat (limited to 'common/math')
-rw-r--r--common/math/integer.go25
-rw-r--r--common/math/integer_test.go50
2 files changed, 0 insertions, 75 deletions
diff --git a/common/math/integer.go b/common/math/integer.go
deleted file mode 100644
index 8162b1985..000000000
--- a/common/math/integer.go
+++ /dev/null
@@ -1,25 +0,0 @@
-package math
-
-import gmath "math"
-
-/*
- * NOTE: The following methods need to be optimised using either bit checking or asm
- */
-
-// SafeSub returns subtraction result and whether overflow occurred.
-func SafeSub(x, y uint64) (uint64, bool) {
- return x - y, x < y
-}
-
-// SafeAdd returns the result and whether overflow occurred.
-func SafeAdd(x, y uint64) (uint64, bool) {
- return x + y, y > gmath.MaxUint64-x
-}
-
-// SafeMul returns multiplication result and whether overflow occurred.
-func SafeMul(x, y uint64) (uint64, bool) {
- if x == 0 {
- return 0, false
- }
- return x * y, x != 0 && y != 0 && y > gmath.MaxUint64/x
-}
diff --git a/common/math/integer_test.go b/common/math/integer_test.go
deleted file mode 100644
index 198114e5e..000000000
--- a/common/math/integer_test.go
+++ /dev/null
@@ -1,50 +0,0 @@
-package math
-
-import (
- gmath "math"
- "testing"
-)
-
-type operation byte
-
-const (
- sub operation = iota
- add
- mul
-)
-
-func TestOverflow(t *testing.T) {
- for i, test := range []struct {
- x uint64
- y uint64
- overflow bool
- op operation
- }{
- // add operations
- {gmath.MaxUint64, 1, true, add},
- {gmath.MaxUint64 - 1, 1, false, add},
-
- // sub operations
- {0, 1, true, sub},
- {0, 0, false, sub},
-
- // mul operations
- {10, 10, false, mul},
- {gmath.MaxUint64, 2, true, mul},
- {gmath.MaxUint64, 1, false, mul},
- } {
- var overflows bool
- switch test.op {
- case sub:
- _, overflows = SafeSub(test.x, test.y)
- case add:
- _, overflows = SafeAdd(test.x, test.y)
- case mul:
- _, overflows = SafeMul(test.x, test.y)
- }
-
- if test.overflow != overflows {
- t.Errorf("%d failed. Expected test to be %v, got %v", i, test.overflow, overflows)
- }
- }
-}