diff options
Diffstat (limited to 'node_modules/core-js/modules/esnext.math.umulh.js')
| -rw-r--r-- | node_modules/core-js/modules/esnext.math.umulh.js | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/node_modules/core-js/modules/esnext.math.umulh.js b/node_modules/core-js/modules/esnext.math.umulh.js new file mode 100644 index 0000000..5f0e70f --- /dev/null +++ b/node_modules/core-js/modules/esnext.math.umulh.js @@ -0,0 +1,18 @@ +var $ = require('../internals/export'); + +// `Math.umulh` method +// https://gist.github.com/BrendanEich/4294d5c212a6d2254703 +// TODO: Remove from `core-js@4` +$({ target: 'Math', stat: true }, { + umulh: function umulh(u, v) { + var UINT16 = 0xFFFF; + var $u = +u; + var $v = +v; + var u0 = $u & UINT16; + var v0 = $v & UINT16; + var u1 = $u >>> 16; + var v1 = $v >>> 16; + var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16); + return u1 * v1 + (t >>> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >>> 16); + } +}); |
