Permalink
Please sign in to comment.
Browse files
Merge pull request #62 from MatthewFluet/llvm
Merge LLVM Codegen
- Loading branch information...
Showing
with
1,952 additions
and 92 deletions.
- +8 −7 basis-library/primitive/prim-mlton.sml
- +2 −2 basis-library/real/real.sml
- +2 −0 bin/mlton-script
- +8 −1 doc/changelog
- +15 −0 doc/guide/src/Ccodegen.adoc
- +1 −1 doc/guide/src/Chunkify.adoc
- +19 −0 doc/guide/src/Codegen.adoc
- +19 −6 doc/guide/src/CompileTimeOptions.adoc
- +2 −0 doc/guide/src/Credits.adoc
- +2 −2 doc/guide/src/HowProfilingWorks.adoc
- +17 −0 doc/guide/src/LLVCodegen.txt
- +4 −11 doc/guide/src/LLVM.adoc
- +9 −0 doc/guide/src/References.adoc
- +2 −2 doc/guide/src/ToMachine.adoc
- +18 −5 man/mlton.1
- +1 −0 mlton/backend/backend.fun
- +1,574 −0 mlton/codegen/llvm-codegen/llvm-codegen.fun
- +27 −0 mlton/codegen/llvm-codegen/llvm-codegen.sig
- +20 −0 mlton/codegen/llvm-codegen/sources.cm
- +18 −0 mlton/codegen/llvm-codegen/sources.mlb
- +2 −0 mlton/codegen/sources.cm
- +2 −0 mlton/codegen/sources.mlb
- +5 −4 mlton/control/control-flags.sig
- +11 −9 mlton/control/control-flags.sml
- +1 −1 mlton/control/control.sig
- +2 −1 mlton/control/control.sml
- +26 −15 mlton/main/compile.fun
- +6 −0 mlton/main/compile.sig
- +4 −3 mlton/main/lookup-constant.fun
- +125 −22 mlton/main/main.fun
| @@ -0,0 +1,15 @@ | ||
| CCodegen | ||
| ======== | ||
| The <:CCodegen:> is a <:Codegen:code generator> that translates the | ||
| <:Machine:> <:IntermediateLanguage:> to C, which is further optimized | ||
| and compiled to native object code by `gcc` (or another C compiler). | ||
| == Implementation == | ||
| * <!ViewGitFile(mlton,master,mlton/codegen/c-codegen/c-codegen.sig)> | ||
| * <!ViewGitFile(mlton,master,mlton/codegen/c-codegen/c-codegen.fun)> | ||
| == Details and Notes == | ||
| The <:CCodegen:> is the original <:Codegen:code generator> for MLton. |
| @@ -0,0 +1,19 @@ | ||
| Codegen | ||
| ======= | ||
| <:Codegen:> is a translation pass from the <:Machine:> | ||
| <:IntermediateLanguage:> to one or more compilation units that can be | ||
| compiled to native object code by an external tool. | ||
| == Implementation == | ||
| * <!ViewGitDir(mlton,master,mlton/codegen)> | ||
| == Details and Notes == | ||
| The following <:Codegen:codegens> are implemented: | ||
| * <:AMD64Codegen:> | ||
| * <:CCodegen:> | ||
| * <:LLVMCodegen:> | ||
| * <:X86Codegen:> |
| @@ -0,0 +1,17 @@ | ||
| LLVMCodegen | ||
| =========== | ||
| The <:LLVMCodegen:> is a <:Codegen:code generator> that translates the | ||
| <:Machine:> <:IntermediateLanguage:> to <:LLVM:> assembly, which is | ||
| further optimized and compiled to native object code by the <:LLVM:> | ||
| toolchain. | ||
| == Implementation == | ||
| * <!ViewGitFile(mlton,master,mlton/codegen/llvm-codegen/llvm-codegen.sig)> | ||
| * <!ViewGitFile(mlton,master,mlton/codegen/llvm-codegen/llvm-codegen.fun)> | ||
| == Details and Notes == | ||
| The <:LLVMCodegen:> was initially developed by Brian Leibig (see | ||
| <!Cite(Leibig13,An LLVM Back-end for MLton)>). |
Oops, something went wrong.
0 comments on commit
bf36a15