MCPcopy
hub / github.com/sql-js/sql.js / _memset

Function _memset

js/sql-debug.js:397843–397890  ·  view source on GitHub ↗
(ptr, value, num)

Source from the content-addressed store, hash-verified

397841 return dest | 0;
397842}
397843function _memset(ptr, value, num) {
397844 ptr = ptr|0; value = value|0; num = num|0;
397845 var end = 0, aligned_end = 0, block_aligned_end = 0, value4 = 0;
397846 end = (ptr + num)|0;
397847
397848 value = value & 0xff;
397849 if ((num|0) >= 67 /* 64 bytes for an unrolled loop + 3 bytes for unaligned head*/) {
397850 while ((ptr&3) != 0) {
397851 HEAP8[((ptr)>>0)]=value;
397852 ptr = (ptr+1)|0;
397853 }
397854
397855 aligned_end = (end & -4)|0;
397856 block_aligned_end = (aligned_end - 64)|0;
397857 value4 = value | (value << 8) | (value << 16) | (value << 24);
397858
397859 while((ptr|0) <= (block_aligned_end|0)) {
397860 HEAP32[((ptr)>>2)]=value4;
397861 HEAP32[(((ptr)+(4))>>2)]=value4;
397862 HEAP32[(((ptr)+(8))>>2)]=value4;
397863 HEAP32[(((ptr)+(12))>>2)]=value4;
397864 HEAP32[(((ptr)+(16))>>2)]=value4;
397865 HEAP32[(((ptr)+(20))>>2)]=value4;
397866 HEAP32[(((ptr)+(24))>>2)]=value4;
397867 HEAP32[(((ptr)+(28))>>2)]=value4;
397868 HEAP32[(((ptr)+(32))>>2)]=value4;
397869 HEAP32[(((ptr)+(36))>>2)]=value4;
397870 HEAP32[(((ptr)+(40))>>2)]=value4;
397871 HEAP32[(((ptr)+(44))>>2)]=value4;
397872 HEAP32[(((ptr)+(48))>>2)]=value4;
397873 HEAP32[(((ptr)+(52))>>2)]=value4;
397874 HEAP32[(((ptr)+(56))>>2)]=value4;
397875 HEAP32[(((ptr)+(60))>>2)]=value4;
397876 ptr = (ptr + 64)|0;
397877 }
397878
397879 while ((ptr|0) < (aligned_end|0) ) {
397880 HEAP32[((ptr)>>2)]=value4;
397881 ptr = (ptr+4)|0;
397882 }
397883 }
397884 // The remaining bytes.
397885 while ((ptr|0) < (end|0)) {
397886 HEAP8[((ptr)>>0)]=value;
397887 ptr = (ptr+1)|0;
397888 }
397889 return (end-num)|0;
397890}
397891function _sbrk(increment) {
397892 increment = increment|0;
397893 var oldDynamicTop = 0;

Callers 15

___syscall192Function · 0.85
___syscall192Function · 0.85
_differenceFuncFunction · 0.85
_sqlite3VXPrintfFunction · 0.85
_valueToTextFunction · 0.85
_unixRandomnessFunction · 0.85
_unixReadFunction · 0.85
_unixShmMapFunction · 0.85
_pcache1CreateFunction · 0.85
_sqlite3MallocZeroFunction · 0.85
_minmaxStepFunction · 0.85
_sqlite3VdbeMemSetStrFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…