From fe6b0bb3593506398c3a8c7e086e2044e8658b3e Mon Sep 17 00:00:00 2001 From: dosisod <39638017+dosisod@users.noreply.github.com> Date: Sun, 2 Jan 2022 16:31:38 -0800 Subject: [PATCH] Update manpage --- docs/skull/skull.1 | 34 ++++++++++++++++++++++++---------- 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/docs/skull/skull.1 b/docs/skull/skull.1 index 72d44b51..3a45bf06 100644 --- a/docs/skull/skull.1 +++ b/docs/skull/skull.1 @@ -1,4 +1,4 @@ -.TH SKULL 1 "OCTOBER 2021" "Linux" "User Manuals" +.TH SKULL 1 "JANURARY 2022" "Linux" "User Manuals" .SH NAME .B skull\fR \- A strict, static, and strongly typed programming language. @@ -8,18 +8,21 @@ \fBskull\fR \fIfile\fR [\fB\-S\fR|\fB\-E\fR|\fB\-c\fR|\fB\-\-c\-backend\fR] [\fB\-gq\fR] [\fB\-\-werror\fR] + [\fB\-O1\fR|\fB\-O2\fR|\fB\-O3\fR] [\fB\-o\fR \fIoutput\fR] + [\fB\-\-llvm\-no\-verify] [\fB\-\-\fR \fIargs\fR] .SH DESCRIPTION \fBskull\fR is a strict, static, and strongly typed programming language. It strives to be as maintainable, readable, and powerful as possible. -It allows for compilation to native binaries, assembler, C (experimental), -and LLVM IR out of the box. +It allows for compilation to native binaries, assembler, C, and LLVM IR +out of the box. -\fIfile\fR must end with the ".sk" extension. Since the ".sk" extension is -dropped when outputting files, When \fIfile\fR is referenced here, it is -implied that the ".sk" extension is not there. +\fIfile\fR must end with the ".sk" extension. For brevity, since the ".sk" +extension is removed when outputting files, whenever \fIfile\fR is +referenced in the context of a filename, it is implied that the ".sk" +extension has been removed. If no flags are passed, \fBskull\fR will compile \fIfile\fR into an executable named \fIfile\fR. @@ -39,21 +42,32 @@ The newly created file is called ".\fIfile\fR.s" and put in the same directory a .TP .B \-E -Output LLVM IR representation of \fIfile\fR to stdout. +Output textual representation of \fIfile\fR to stdout. +For the LLVM backend, LLVM IR is emitted, and for the C backend, C is emitted. +You can use \fB\-o\fR to write to a file. .TP .B \-c Output an object file compiled from \fIfile\fR. The newly created file is called ".\fIfile\fR.o" and put in the same directory as \fIfile\fR. +.TP +.B \-O1, \-O2, \-O3 +Enable optimizations. \fB\-O1\fR correspondes to level 1, \fB\-O2\fR to level 2, and so on. + .TP .B \-\-c\-backend -Output files using (experimental) C backend. +Output files using C backend. The newly created file is called ".\fIfile\fR.c" and put in the same directory as \fIfile\fR. +.TP +.B \-\-llvm\-no\-verify +In the LLVM backend, don't verify LLVM module(s). +This allows for forcing the output of invalid LLVM for debugging purposes. + .TP .B \-g -Add debugging symbols. +Add debugging information. .TP .B \-q @@ -65,7 +79,7 @@ Treat all warnings as errors. .TP .BI \-o " output" -Output compiled file to \fIoutput\fR instead of default path. +Redirect output stream to \fIoutput\fR instead of default location. .TP .BI \-\- " args"