summaryrefslogtreecommitdiff
path: root/bytecomp
Commit message (Collapse)AuthorAgeFilesLines
...
* Add Misc.split_path_contentsNicolás Ojeda Bär2018-10-101-6/+1
|
* Use String.split_on_charNicolás Ojeda Bär2018-10-101-18/+6
|
* Full explanation for unsafe cycles in recursive modules (#2058)Florian Angeletti2018-10-012-40/+79
| | | | * Full explanation for unsafe cycles in rec modules
* ident: hide stamp related functions from the interfaceThomas Refis2018-09-211-1/+1
| | | | | | | | | | | | The only remaining user was [Predef], which was bumping the counter by 999 to allow cmis to remain compatible if new predefs were defined. This commit removes that use by making sure that every ident defined in predef.ml is marked as predef and use a different stamp counter as user defined idents. That way idents in cmi always start at 1, no matter how many predefs there are. Stamps on predef aren't strictly necessary: predefs names are unique. However, predef idents comparison is just faster with stamps.
* ident: split Local into Local and ScopedThomas Refis2018-09-218-60/+61
| | | | | Also rename [create] into [create_scoped] and [create_var] into [create_local].
* ident: add an explicit scope fieldThomas Refis2018-09-218-60/+62
| | | | | | | | - Ident.create now takes a scope as argument - added Ident.create_var to use when the scope doesn't matter - the current_time and the current_level are unrelated as of this commit. But one has to remember to bump the level when creating new scopes.
* manual: compiler-libs.mld -> compiler_libs.mldFlorian Angeletti2018-09-121-1/+1
|
* MPR7546, manual: preambles and warnings for compiler-libs modules (#2020)Florian Angeletti2018-09-121-1/+6
| | | | | | * preambles for compiler-libs modules * Compilerlibs intro and warning link
* check arity of primitivesHugo Heuzard2018-09-033-252/+297
|
* manual: fix broken build caused by GPR #2007Gabriel Scherer2018-08-271-1/+1
|
* Deprecate Pervasives (#1605)Jérémie Dimino2018-08-273-3/+3
| | | | | | | - inline Pervasives in Stdlib and re-add Pervasives as a deprecated module that aliases all elements of Stdlib except the stdlib modules. - remove special case for Stdlib.Pervasives in printtyp.ml
* Location: significantly rework the code printing errors and warningsArmaël Guéneau2018-08-084-4/+4
|
* Add locations to attributesHugo Heuzard2018-08-063-17/+17
| | | | | | Changes fix typo
* Add option to dump the output of e.g. -dlambda in a file (#1913)sliquister2018-07-272-7/+8
|
* Implement reviewer suggestionsNicolás Ojeda Bär2018-07-255-235/+235
|
* Use reraise_raw_backtrace in Misc.try_finallyFrançois Bobot2018-07-256-253/+244
| | | | | And add labels ~always for previous cleanup function and ~exceptionally for new cleanup function in exceptional case
* Just some tbl things. (#1699)Gabriel Radanne2018-07-236-68/+81
|
* Merge pull request #1751 from trefis/pr7554Thomas Refis2018-07-198-100/+130
|\ | | | | Lambda.subst: also update debug event environments
| * Lambda.subst: update debug events environmentsThomas Refis2018-07-175-90/+120
| | | | | | | | | | | | | | Introduced "Lambda.rename" for var->var substitutions, this also updates the debug envs automatically. This fixes MPR#7554
| * lambda_event contains actual env, not a summaryThomas Refis2018-07-176-10/+10
| |
* | Merge pull request #1906 from sliquister/doutput-prepareGabriel Scherer2018-07-176-39/+38
|\ \ | |/ |/| Minor cleanup around printing in the compiler (warnings, errors, etc)
| * Print warnings on the warnings formatter in the couple of places that don'tValentin Gatien-Baron2018-07-156-39/+38
| | | | | | | | | | | | Except the OCAMLPARAM stuff, as that runs before the command line warning settings are even parsed, so while they are reported using the normal warnings code, they don't look like normal warnings.
* | Make sure we don't load extra cmi files when compiling extension ↵Jérémie Dimino2018-07-161-1/+2
| | | | | | | | constructors (#1908)
* | allow exceptions under or-patternsThomas Refis2018-07-162-31/+80
|/
* matching.ml: remove an outdated commentArmaël Guéneau2018-07-121-1/+0
|
* Shadow the polymorphic comparison in the middle-end (#1811)Xavier Clerc2018-07-112-0/+66
|
* Merge the asmrun and byterun directories into the runtime directorySébastien Hinderer2018-06-281-1/+1
|
* Merge branch 'trunk' into build-path-prefix-map-primsGabriel Scherer2018-06-271-11/+23
|\
| * Add -dcamlprimc + pass -fdebug-prefix-map when available (#1845)Xavier Clerc2018-06-271-11/+23
| | | | | | | | - Introduce `-dcamlprimc`, to keep the generated C file containing the primitive list - Use `-fdebug-prefix-map` for compiling temporary C files when this option is supported
* | Apply the rewrite only to absolute paths.xclerc2018-06-221-1/+5
| |
* | Use the information from `BUILD_PATH_PREFIX_MAP` when compiling primitives ↵Xavier Clerc2018-06-221-0/+1
|/ | | | based on the filename.
* Whitespace and overlong line fixes.David Allsopp2018-06-148-14/+30
|
* Remove pv_name fieldNicolás Ojeda Bär2018-06-071-4/+1
|
* Fix lazy/float interaction when configured with -no-flat-float-array. (#1471)Damien Doligez2018-06-051-3/+5
| | | | | | | Fix interaction between lazy and float when configured with -no-flat-float-array. Problem reported by Mark Shinwell in https://github.com/ocaml/ocaml/pull/1465#pullrequestreview-74400016
* add advanced option to tune performance of pattern matching compiler in case ↵Dwight Guth2018-06-011-2/+2
| | | | of exponential blowup
* Handle `[@inlined]` attributes under a module constraint (#1808)Xavier Clerc2018-06-011-4/+19
| | | Handle `[@inlined]` attributes under a module constraint.
* Merge pull request #1723 from stedolan/remove-meta-staticGabriel Scherer2018-05-287-48/+32
|\ | | | | Remove Meta.static_{alloc, free}.
| * Add an optional digest parameter to Meta.reify_bytecode.Stephen Dolan2018-04-132-2/+4
| |
| * Remove Meta.static_{alloc, free}.Stephen Dolan2018-04-137-48/+30
| | | | | | | | | | | | | | The bytecode runtime now represents code to be loaded as LongString.t, rather than as a naked pointer to a bytecode block. (This commit breaks Dynlink of bytecode, due to an issue about digests)
* | reindent bytecomp/switch.mlThomas Refis2018-05-251-602/+602
| |
* | matching: constants aren't all in the same groupThomas Refis2018-05-241-4/+34
| |
* | translmod: indentation fixThomas Refis2018-05-081-14/+16
| |
* | matching: cleanup debug printing (#1762)Thomas Refis2018-05-051-31/+16
| | | | | | | | Avoid mixing calls to Format with calls to prerr_*
* | Add reference to Lazy issue reported in crowbarStephen Dolan2018-05-031-1/+2
| |
* | Ensure Lazy has stable behaviour with afl-instrument.Stephen Dolan2018-05-021-6/+19
| | | | | | | | | | | | When AFL instrumentation is enabled, the inlining of Lazy.force is disabled, so that the GC optimisation of removing Forward_tag blocks is no longer visible in the instrumentation output.
* | PR#7787: fix module type of and recursive modules interactionThomas Refis2018-04-301-2/+3
| | | | | | | | Mta_absent and Mta_present aliases should be compiled differently.
* | Merge pull request #1705 from hhugo/exnThomas Refis2018-04-271-10/+10
|\ \ | |/ |/| keep @@ attributes on exceptions
| * allow to attach @@ attributes on exceptionsHugo Heuzard2018-04-091-10/+10
| |
* | Fix location primitives (e.g. __FILE__) (#1715)Leo White2018-04-111-7/+7
|/
* Organise and simplify translation of primitivesLeo White2018-04-099-674/+849
|