Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Added lambda option to -stop-after comiler flag and logic to compile_common, ↵ | Doug Smith | 2023-01-12 | 1 | -22/+33 |
| | | | | | | | | compile, and optcompile to terminate compilation after lambdas are resolved based on this option. Co-authored-by: Doug Smith <dsmith47@nd.edu> Co-authored-by: Dmitrii Kosarev <Dmitrii.Kosarev@pm.me> | ||||
* | Remove unused labels | Leo White | 2021-03-22 | 1 | -2/+0 |
| | |||||
* | Move typed_impl to Typedtree.t | Leandro Ostera | 2020-11-05 | 1 | -2/+2 |
| | |||||
* | Introduce typed_impl record | Leandro Ostera | 2020-11-05 | 1 | -6/+4 |
| | |||||
* | Expose module signature when typing implementation | Leandro Ostera | 2020-11-05 | 1 | -2/+4 |
| | | | | | | | | | | | | | | | | | While working on a new backend for OCaml to generate Erlang sources, I found the need to read the .cmi file back into a `Types.signature` value. @Drup spotted that I was reading the file and pointed out this value was already being read during the type checking process. A quick check at the `Typedtree.module_coercion` showed us that it would be difficul to extract the same information that is readily available in the signature value. This change will expose the signature value directly, so other backends relying on this signature information do not need to do the extra work of reading it again. | ||||
* | ability to restart compilation from .cmir-linear IR files | Greta Yorsh | 2020-10-13 | 1 | -2/+11 |
| | |||||
* | Move some code from Asmgen to the middle end directory etc. (#2288) | Mark Shinwell | 2019-05-10 | 1 | -12/+21 |
| | | | Followup to (#2281) | ||||
* | Move some middle-end files around (#2281) | Mark Shinwell | 2019-04-01 | 1 | -4/+4 |
| | | | | | | * Various file moves in the middle end: this is the first stage of improving separation between the middle end and backend. * Creation of file_formats/ directory (with associated file moves) to hold the definitions of compilation artifact formats. * Creation of lambda/ directory (with associated file moves) to hold Lambda language definition files, transformation passes and construction passes from Typedtree. * Disable (hopefully temporarily) dynlink, debugger and ocamldoc for the dune build. | ||||
* | Remove support for compiler plugins (#2276) | Mark Shinwell | 2019-03-13 | 1 | -2/+2 |
| | | | | | | | | | | | | | | After consultation on the core developers' list I am proposing this patch to remove support for compiler plugins. The main motivations for removing compiler plugins are: - They are a potential security risk. - They increase the complexity of the build system and make maintenance of the Dynlink libraries more difficult (although actually, this complexity could probably be reduced after #2268 is merged). - Many applications of plugins should be able to be expressed by building custom compiler drivers that link against compilerlibs. * Remove compiler plugins and hooks * Add new function Dynlink.unsafe_get_global_symbol but keep it outside the documented API. * Remove otherlibs/dynlink/nodynlink.ml * Update Changes | ||||
* | Compile_common: turn `init` into continuation-passing `with_info` | Gabriel Scherer | 2019-01-05 | 1 | -6/+4 |
| | | | | | | I think this clarifies the fact that the `info` value is a resource that has a limited lifetime. The new API lets us create (and close) the ppf_dump directly from `Compile_common.with_info`, simplifying the API for user. | ||||
* | Compile_common.init: make ppf_dump a labelled argument | Gabriel Scherer | 2019-01-04 | 1 | -2/+2 |
| | |||||
* | driver/compile_common: refactor interface/implementation entry points | Gabriel Scherer | 2019-01-04 | 1 | -9/+17 |
| | |||||
* | driver: consistently use _ as word separator | Gabriel Scherer | 2019-01-04 | 1 | -9/+9 |
| | |||||
* | Compile_common.implementation | Valentin Gatien-Baron | 2018-08-04 | 1 | -17/+4 |
| | |||||
* | compile_common: remove wrap_compilation | Gabriel Scherer | 2018-08-04 | 1 | -7/+15 |
| | | | | | | | | | | | | | | | wrap_compilation makes the compilation pipeline non-modular by exposing a split between two fixed passes, a frontend and a backend, in a .mli interface. I need a finer-grained interface for a feature I've been using in my Menhir-parser branch, and it is likely that other users also will need to be finer-grained than that. This PR pushes the error/ressource handling contained with wrap_compilation into its producers (note: this change assume that only typecheck_impl needs Stypes.dump, and that only the optcompile backend may generate `obj` and `cmx` files), so that the logic in "wrap" becomes very simple, and then inlines it in the two users in {opt,}compile.ml. | ||||
* | Add compile_common.ml which contains the basic compilation pipeline. | Drup | 2018-07-27 | 1 | -124/+62 |
| | | | | Factorize the part from compile.ml and optcompile.ml. | ||||
* | Add option to dump the output of e.g. -dlambda in a file (#1913) | sliquister | 2018-07-27 | 1 | -19/+23 |
| | |||||
* | Implement reviewer suggestions | Nicolás Ojeda Bär | 2018-07-25 | 1 | -62/+61 |
| | |||||
* | Use reraise_raw_backtrace in Misc.try_finally | François Bobot | 2018-07-25 | 1 | -8/+6 |
| | | | | | And add labels ~always for previous cleanup function and ~exceptionally for new cleanup function in exceptional case | ||||
* | remove redundant calls to simplify_signature | Thomas Refis | 2018-07-25 | 1 | -1/+1 |
| | | | | Simplification is already done in Typemod.type_interface. | ||||
* | Create warning 64, for uses of -unsafe with a -pp that returns a marshalled ast | Valentin Gatien-Baron | 2018-07-15 | 1 | -2/+2 |
| | | | | | | Instead of the current print to stderr. This way it's treated the same as other warnings: it has a position, colors, can be made an error, disabled, goes in the expected formatter, is documented. | ||||
* | PR#6416 et al.: injective mapping between identifiers and printed names (#1120) | Florian Angeletti | 2018-06-26 | 1 | -1/+2 |
| | |||||
* | Whitespace and overlong line fixes. | David Allsopp | 2018-06-14 | 1 | -1/+2 |
| | |||||
* | Fix MPR#7751 (#1657) | Jacques Garrigue | 2018-03-27 | 1 | -1/+1 |
| | | | Fix the toplevel printer, to have it properly load needed cmi's. | ||||
* | generalize -dtimings to show allocation, top heap size (#1152) | sliquister | 2017-06-09 | 1 | -8/+8 |
| | |||||
* | display the output of -dtimings as a hierarchy | Valentin Gatien-Baron | 2017-03-07 | 1 | -99/+102 |
| | |||||
* | making -dtimings include time spent typing mli's | Valentin Gatien-Baron | 2017-02-01 | 1 | -18/+20 |
| | |||||
* | Fix order of arguments with -cclib XXX (#761) | Fabrice Le Fessant | 2016-12-14 | 1 | -4/+1 |
| | |||||
* | fix whitespace, long lines, headers | Damien Doligez | 2016-08-01 | 1 | -1/+2 |
| | |||||
* | Add hooks on some compilation phases | Fabrice Le Fessant | 2016-07-12 | 1 | -3/+3 |
| | |||||
* | Also remove the forced dependency dummy code hack for closure | Pierre Chambart | 2016-07-08 | 1 | -4/+4 |
| | | | | | This also share the result type of transl_implementation_flambda and transl_store_implementation | ||||
* | Some cleanup to explicit transl_implementation_flambda return values | Pierre Chambart | 2016-07-08 | 1 | -4/+4 |
| | |||||
* | Allow to force linking modules without generating dummy code | Pierre Chambart | 2016-07-08 | 1 | -4/+6 |
| | |||||
* | Update headers for the new license. | Damien Doligez | 2016-02-18 | 1 | -11/+14 |
| | | | | Remains to be done: remove all headers in testsuite/tests. | ||||
* | Tidy up new command-line parameters | Leo White | 2016-02-11 | 1 | -12/+2 |
| | |||||
* | Make warning 59 less unhelpful (includes work by Runhang Li) | Mark Shinwell | 2016-02-11 | 1 | -0/+1 |
| | |||||
* | Reformatting only (to the standards of tools/check-typo) | Mark Shinwell | 2016-02-10 | 1 | -1/+3 |
| | |||||
* | Revert "PR#6475: accept -o in ocamlc when compiling C files" | Damien Doligez | 2016-02-10 | 1 | -2/+1 |
| | | | | | | | | | | | | This reverts commit 1d8e590c54dcd888503c3ea2944533255ef87343. Conflicts: Changes bytecomp/bytelink.ml driver/optcompile.ml ocamlbuild/ocaml_specific.ml ocamlbuild/testsuite/internal.ml utils/ccomp.ml | ||||
* | Import latest Flambda changes | Mark Shinwell | 2016-02-09 | 1 | -1/+3 |
| | |||||
* | Enable flambda | Pierre Chambart | 2016-01-28 | 1 | -12/+51 |
| | |||||
* | use Timings.source_provenance in more places | Thomas Refis | 2015-12-31 | 1 | -3/+3 |
| | |||||
* | Rename type build_kind and sourcefile arguments to source_provenance | Pierre Chambart | 2015-12-18 | 1 | -1/+1 |
| | |||||
* | Record the source file name being built in Compilenv | Pierre Chambart | 2015-12-18 | 1 | -1/+2 |
| | |||||
* | Remove last use of Timining.start/stop in {opt,}compile.ml | Pierre Chambart | 2015-12-18 | 1 | -6/+6 |
| | |||||
* | Avoid using Timings.start/stop | Pierre Chambart | 2015-12-18 | 1 | -6/+4 |
| | |||||
* | Record compiler runtime | Pierre Chambart | 2015-12-18 | 1 | -1/+7 |
| | |||||
* | Add module to deal with 'front-end' built-in attributes. | alainfrisch | 2015-12-02 | 1 | -1/+1 |
| | |||||
* | Keep deprecation flag on compilation unit, extracted from a floating ↵ | alainfrisch | 2015-11-27 | 1 | -1/+2 |
| | | | | attribute in the .mli file. | ||||
* | merge branch 4.02 from 4.02.1 (rev 15540) to a few fixes after 4.02.2 (rev ↵ | Damien Doligez | 2015-07-17 | 1 | -11/+5 |
| | | | | | | 16205) git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16214 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02 | ||||
* | minor: cut too-long lines | Gabriel Scherer | 2014-12-21 | 1 | -1/+2 |
| | | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15735 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02 |