Diffstat (limited to 'doc/6m.1')
1 files changed, 89 insertions, 0 deletions
diff --git a/doc/6m.1 b/doc/6m.1
new file mode 100644
@@ -0,0 +1,89 @@
+.TH MC 1
+The ?m family of compilers compile Myrddin source into object files
+for the corresponding architecture. There is one compiler for each
+architecture supported, with a unique name. By default, if the input
+file is named
+then the the object file that is generated will be named
+Any text between the first '+' in the file name and the suffix are
+stripped. This functionality is used to specify system tags for
+tools like 'mbld'.
+If the filename does not end with the suffix
+then the suffix
+will simply be appended to it.
+The following architectures are currently supported:
+The compiler options are:
+.B -d [flTri]
+Print debugging dumps. Additional options may be given to give more
+debugging information for specific intermediate states of the compilation.
+Print a summary of the available options.
+.B -I path
+Add 'path' to the search path for unquoted use statments. This option
+does not affect the search path for local usefiles, which are always
+searched relative to the compiler's current working directory. Without
+any options, the search path defaults to /usr/include/myr.
+.B -o output-file
+Specify that the generated code should be placed in
+Generate assembly code along with the object file.
+ 6m foo.myr
+ 6m bar.myr
+ ld -o foobar foo.o bar.o
+The source code for this compiler is available from
+.SH SEE ALSO
+The language is not yet complete, and the compilers often omit useful
+constructs in spite of their desirability.
+There are virtually no optimizations done, and the generated source is
+often very poorly performing.
+The current calling convention is stack-based and not register-based, even
+on architectures where it should be register-based.
+The calling convention is not compatible with C.