From 602d114eaab01aef167159aedba7d5bbfc634eef Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Thu, 30 Jan 2014 14:07:01 -0800 Subject: asmify rand_r --- src/library.js | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/library.js b/src/library.js index b4da994e..20cb64f4 100644 --- a/src/library.js +++ b/src/library.js @@ -3452,12 +3452,15 @@ LibraryManager.library = { srand: function(seed) { {{{ makeSetValue('___rand_seed', 0, 'seed', 'i32') }}} }, + rand_r__sig: 'ii', + rand_r__asm: true, rand_r__deps: ['__rand_seed'], - rand_r: function(seedp) { - var val = {{{ makeGetValue('seedp', 0, 'i32') }}}; - val = (Math.imul(val, 31010991) + 0x676e6177)|0; - {{{ makeSetValue('seedp', 0, 'val', 'i32') }}}; - return val; + rand_r: function(seedp) { + seedp = seedp|0; + var val = 0; + val = (Math_imul({{{ makeGetValueAsm('seedp', 0, 'i32') }}}, 31010991)|0) + 0x676e6177 | 0; + {{{ makeSetValueAsm('seedp', 0, 'val', 'i32') }}}; + return val|0; }, rand__deps: ['rand_r'], rand: function() { -- cgit v1.2.3-70-g09d2