From 61e1e5ce377719c8e9e437e5ba79ba06fc1de4ba Mon Sep 17 00:00:00 2001 From: Kyle Gunger Date: Fri, 13 Dec 2024 16:10:14 -0500 Subject: Type generation for compile modules --- tnslc/compile/outbuf.tnsl | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 tnslc/compile/outbuf.tnsl (limited to 'tnslc/compile/outbuf.tnsl') diff --git a/tnslc/compile/outbuf.tnsl b/tnslc/compile/outbuf.tnsl new file mode 100644 index 0000000..7394feb --- /dev/null +++ b/tnslc/compile/outbuf.tnsl @@ -0,0 +1,31 @@ +struct OutBuf { + utils.Vector + hsec, + dsec, + csec +} + +/; method OutBuf + /; init + self.hsec.init(1) + self.dsec.init(1) + self.csec.init(1) + ;/ + + /; write_to_file (~utils.File fout) + fout`.open() + fout`.write_cstr("bits 64\n\0") + fout`.write_cstr(self.hsec.as_cstr()) + fout`.write_cstr("\nsection .data\n\0") + fout`.write_cstr(self.dsec.as_cstr()) + fout`.write_cstr("\nsection .text\n\0") + fout`.write_cstr(self.csec.as_cstr()) + fout`.close() + ;/ + + /; end + self.hsec.end() + self.dsec.end() + self.csec.end() + ;/ +;/ -- cgit v1.2.3