aboutsummaryrefslogtreecommitdiff
path: root/src/javascript/jsc/api/FFI.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/javascript/jsc/api/FFI.h')
-rw-r--r--src/javascript/jsc/api/FFI.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/javascript/jsc/api/FFI.h b/src/javascript/jsc/api/FFI.h
index 48e4db48d..096abcfd9 100644
--- a/src/javascript/jsc/api/FFI.h
+++ b/src/javascript/jsc/api/FFI.h
@@ -106,6 +106,8 @@ EncodedJSValue ValueTrue = { TagValueTrue };
typedef void* JSContext;
+#define LOAD_ARGUMENTS_FROM_CALL_FRAME EncodedJSValue* args = (EncodedJSValue*)((size_t*)callFrame + Bun_FFI_PointerOffsetToArgumentsList);
+
#ifdef IS_CALLBACK
extern int64_t bun_call(JSContext, void* func, void* thisValue, size_t len, const EncodedJSValue args[], void* exception);
@@ -180,6 +182,12 @@ static bool JSVALUE_TO_BOOL(EncodedJSValue val) {
return val.asInt64 == TagValueTrue;
}
+#define arg(i) ((EncodedJSValue*)args)[i]
+void* JSFunctionCall(void* globalObject, void* callFrame);
+// int64_t JSFunctionCall(void* globalObject, void* callFrame) {
+// EncodedJSValue* args = (EncodedJSValue*)((unsigned char*)callFrame + Bun_FFI_PointerOffsetToArgumentsList);
+// }
+
// --- Generated Code ---