From 4a5751ef9fa7775732d749d6d9688131f2aaa199 Mon Sep 17 00:00:00 2001 From: Kyle Gunger Date: Sat, 13 May 2023 23:16:50 -0400 Subject: Partially fix calls --- tnslc/tnslc_wrapped.tnsl | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 tnslc/tnslc_wrapped.tnsl (limited to 'tnslc/tnslc_wrapped.tnsl') diff --git a/tnslc/tnslc_wrapped.tnsl b/tnslc/tnslc_wrapped.tnsl new file mode 100644 index 0000000..398db47 --- /dev/null +++ b/tnslc/tnslc_wrapped.tnsl @@ -0,0 +1,20 @@ +:include "c_wrap.tnsl" + +/; main (int argc, ~~uint argv) [int] + # On windows, the first two arguments are passed in RCX and RDX, so we need to + # update their positions here or else tnsl will have garbage values in r8 and r9 + asm "mov r8, rcx" + asm "mov r9, rdx" + + # If on linux, you would use rdi and rsi instead of rcx and rdx, respectively + # simply comment out the bove asm, and uncomment the below lines + # asm "mov r8, rdi" + # asm "mov r9, rsi" + + Vector vec + vec.start(1) + uint8 a = 1 + vec.push(~a) + ~uint8 v = vec.get(0) + return v` +;/ \ No newline at end of file -- cgit v1.2.3