core/vm: capped int pool

release/1.6
Jeffrey Wilcke 8 years ago
parent a816e75662
commit e16a7ef60f
  1. 6
      core/vm/intpool.go

@ -20,6 +20,8 @@ import "math/big"
var checkVal = big.NewInt(-42)
const poolLimit = 256
// intPool is a pool of big integers that
// can be reused for all big.Int operations.
type intPool struct {
@ -37,6 +39,10 @@ func (p *intPool) get() *big.Int {
return new(big.Int)
}
func (p *intPool) put(is ...*big.Int) {
if len(p.pool.data) > poolLimit {
return
}
for _, i := range is {
// verifyPool is a build flag. Pool verification makes sure the integrity
// of the integer pool by comparing values to a default value.

Loading…
Cancel
Save