(size)
| 305 | } |
| 306 | |
| 307 | function dynamicAlloc(size) { |
| 308 | assert(DYNAMICTOP_PTR); |
| 309 | var ret = HEAP32[DYNAMICTOP_PTR>>2]; |
| 310 | var end = (ret + size + 15) & -16; |
| 311 | HEAP32[DYNAMICTOP_PTR>>2] = end; |
| 312 | if (end >= TOTAL_MEMORY) { |
| 313 | var success = enlargeMemory(); |
| 314 | if (!success) { |
| 315 | HEAP32[DYNAMICTOP_PTR>>2] = ret; |
| 316 | return 0; |
| 317 | } |
| 318 | } |
| 319 | return ret; |
| 320 | } |
| 321 | |
| 322 | function alignMemory(size, factor) { |
| 323 | if (!factor) factor = STACK_ALIGN; // stack alignment (16-byte) by default |
no test coverage detected
searching dependent graphs…