| Server IP : 14.225.204.176 / Your IP : 216.73.216.6 Web Server : nginx/1.24.0 System : Linux nodejs-ybgk 6.8.0-40-generic #40-Ubuntu SMP PREEMPT_DYNAMIC Fri Jul 5 10:34:03 UTC 2024 x86_64 User : root ( 0) PHP Version : 8.1.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/share/nodejs/webassemblyjs/esm/interpreter/kernel/ |
Upload File : |
export function createStackFrame(locals, originatingModule, allocator) {
return {
locals: locals,
globals: [],
/**
* Labels are named block of code.
* We maintain a map to access the block for a given identifier.
*
* https://webassembly.github.io/spec/core/exec/runtime.html#labels
*/
labels: [],
/**
* Local applicatif Stack for the current stackframe.
*
* https://webassembly.github.io/spec/core/exec/runtime.html#stack
*/
values: [],
/**
* We keep a reference to its originating module.
*
* When we need to lookup a function by addr for example.
*/
originatingModule: originatingModule,
/**
* For shared memory operations
*/
allocator: allocator,
/**
* The callee address
*/
returnAddress: -1
};
}
export function createChildStackFrame(parent, pc) {
var locals = parent.locals,
originatingModule = parent.originatingModule,
allocator = parent.allocator,
trace = parent.trace;
var frame = createStackFrame(locals, originatingModule, allocator);
frame.trace = trace;
frame.returnAddress = pc;
return frame;
}