Fix asm.js errors in emscripten-generated functions

This commit is contained in:
Scott Nonnenberg 2019-02-13 11:56:08 -08:00
parent e12e120355
commit 291e8d80cb
2 changed files with 14 additions and 14 deletions

View file

@ -646,11 +646,11 @@ function allocate(slab, types, allocator, ptr) {
assert((ret & 3) == 0); assert((ret & 3) == 0);
stop = ret + (size & ~3); stop = ret + (size & ~3);
for (; ptr < stop; ptr += 4) { for (; ptr < stop; ptr += 4) {
HEAP32[((ptr)>>2)]=0; HEAP32[ptr>>2]=0;
} }
stop = ret + size; stop = ret + size;
while (ptr < stop) { while (ptr < stop) {
HEAP8[((ptr++)>>0)]=0; HEAP8[ptr++>>0]=0;
} }
return ret; return ret;
} }
@ -22848,12 +22848,12 @@ function _memset(ptr, value, num) {
} }
} }
while ((ptr|0) < (stop4|0)) { while ((ptr|0) < (stop4|0)) {
HEAP32[((ptr)>>2)]=value4; HEAP32[ptr>>2]=value4;
ptr = (ptr+4)|0; ptr = (ptr+4)|0;
} }
} }
while ((ptr|0) < (stop|0)) { while ((ptr|0) < (stop|0)) {
HEAP8[((ptr)>>0)]=value; HEAP8[ptr>>0]=value;
ptr = (ptr+1)|0; ptr = (ptr+1)|0;
} }
return (ptr-num)|0; return (ptr-num)|0;
@ -22898,20 +22898,20 @@ function _memcpy(dest, src, num) {
if ((dest&3) == (src&3)) { if ((dest&3) == (src&3)) {
while (dest & 3) { while (dest & 3) {
if ((num|0) == 0) return ret|0; if ((num|0) == 0) return ret|0;
HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); HEAP8[dest>>0]=((HEAP8[src>>0])|0);
dest = (dest+1)|0; dest = (dest+1)|0;
src = (src+1)|0; src = (src+1)|0;
num = (num-1)|0; num = (num-1)|0;
} }
while ((num|0) >= 4) { while ((num|0) >= 4) {
HEAP32[((dest)>>2)]=((HEAP32[((src)>>2)])|0); HEAP32[dest>>2]=((HEAP32[src>>2])|0);
dest = (dest+4)|0; dest = (dest+4)|0;
src = (src+4)|0; src = (src+4)|0;
num = (num-4)|0; num = (num-4)|0;
} }
} }
while ((num|0) > 0) { while ((num|0) > 0) {
HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); HEAP8[dest>>0]=((HEAP8[src>>0])|0);
dest = (dest+1)|0; dest = (dest+1)|0;
src = (src+1)|0; src = (src+1)|0;
num = (num-1)|0; num = (num-1)|0;

View file

@ -646,11 +646,11 @@ function allocate(slab, types, allocator, ptr) {
assert((ret & 3) == 0); assert((ret & 3) == 0);
stop = ret + (size & ~3); stop = ret + (size & ~3);
for (; ptr < stop; ptr += 4) { for (; ptr < stop; ptr += 4) {
HEAP32[((ptr)>>2)]=0; HEAP32[ptr>>2]=0;
} }
stop = ret + size; stop = ret + size;
while (ptr < stop) { while (ptr < stop) {
HEAP8[((ptr++)>>0)]=0; HEAP8[ptr++>>0]=0;
} }
return ret; return ret;
} }
@ -22848,12 +22848,12 @@ function _memset(ptr, value, num) {
} }
} }
while ((ptr|0) < (stop4|0)) { while ((ptr|0) < (stop4|0)) {
HEAP32[((ptr)>>2)]=value4; HEAP32[ptr>>2]=value4;
ptr = (ptr+4)|0; ptr = (ptr+4)|0;
} }
} }
while ((ptr|0) < (stop|0)) { while ((ptr|0) < (stop|0)) {
HEAP8[((ptr)>>0)]=value; HEAP8[ptr>>0]=value;
ptr = (ptr+1)|0; ptr = (ptr+1)|0;
} }
return (ptr-num)|0; return (ptr-num)|0;
@ -22898,20 +22898,20 @@ function _memcpy(dest, src, num) {
if ((dest&3) == (src&3)) { if ((dest&3) == (src&3)) {
while (dest & 3) { while (dest & 3) {
if ((num|0) == 0) return ret|0; if ((num|0) == 0) return ret|0;
HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); HEAP8[dest>>0]=((HEAP8[src>>0])|0);
dest = (dest+1)|0; dest = (dest+1)|0;
src = (src+1)|0; src = (src+1)|0;
num = (num-1)|0; num = (num-1)|0;
} }
while ((num|0) >= 4) { while ((num|0) >= 4) {
HEAP32[((dest)>>2)]=((HEAP32[((src)>>2)])|0); HEAP32[dest>>2]=((HEAP32[src>>2])|0);
dest = (dest+4)|0; dest = (dest+4)|0;
src = (src+4)|0; src = (src+4)|0;
num = (num-4)|0; num = (num-4)|0;
} }
} }
while ((num|0) > 0) { while ((num|0) > 0) {
HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); HEAP8[dest>>0]=((HEAP8[src>>0])|0);
dest = (dest+1)|0; dest = (dest+1)|0;
src = (src+1)|0; src = (src+1)|0;
num = (num-1)|0; num = (num-1)|0;