Gabriel Scherer
bfb5d9e404
fix .depend for parallel make
...
Damien introduced a dependency from asmcomp/ to typing/env.ml, which
breaks parallel build.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14767 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-05-08 13:06:33 +00:00
Damien Doligez
5b8df637d2
merge branch "safe-string"
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14705 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-04-29 11:56:17 +00:00
Xavier Leroy
558f40e344
New back-end optimization pass: common subexpression elimination (CSE).
...
(Reuses results of previous computations instead of recomputing them.)
(Cherry-picked from branch backend-optim.)
Tested on amd64/linux and i386/linux.
Other back-ends compile (after assorted updates) but are untested.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14688 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-04-26 10:40:22 +00:00
Xavier Leroy
9c1d005ebb
New back-end optimization pass: dead code elimination.
...
(Removes arithmetic and load instructions whose results are unused.)
(Cherry-picked from branch backend-optim.)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14686 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-04-26 09:31:18 +00:00
Damien Doligez
7303ac34ca
fix some of the whitespace problems in the source
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14582 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-04-12 10:17:02 +00:00
Luc Maranget
c2a88c27fd
#PR6269 Optimized string matching
...
Noticed that I had to bootstrap to test on ARM, so I commit a new bootstrap
compiler.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14479 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-03-21 17:02:44 +00:00
Alain Frisch
10abdce7b1
Record inclusion checks between value_descriptions in .cmt files. This makes it easy in particular to track in external tools value declarations between implementations and interfaces.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14422 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-01-28 11:07:02 +00:00
Jacques Garrigue
7a904bb8db
make path normalization safer; now Core not only compiles but works
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/module-alias@14212 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-10-04 02:06:40 +00:00
Alain Frisch
cc31694f7c
Keep attributes on module declarations.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14195 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-27 17:05:39 +00:00
Alain Frisch
637893aa3c
Fix dependencies.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14092 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-11 14:23:43 +00:00
Alain Frisch
525ef9d703
Synchronize with trunk.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13897 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-16 13:34:30 +00:00
Fabrice Le Fessant
ad6c285818
Improved implementation of OCAMLPARAM
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13747 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-05 16:34:40 +00:00
Fabrice Le Fessant
9b53f8b10d
Re-add configure option -with-frame-pointers
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13738 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-03 18:03:59 +00:00
Fabrice Le Fessant
97bc1fa9e2
Reverting -with-frame-pointers
...
Fails to compile alt-ergo without frame-pointers. No time to debug
before tonight, so I revert and will merge again after fixing the
problem.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13732 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-03 06:29:33 +00:00
Fabrice Le Fessant
1b2667b9f2
Add -with-frame-pointers to ./configure
...
This option can be used to tell the native compiler that it should
update frame pointers, so that debuggers and profiling tools
(especially Linux perf) can use them. For now, it is only supported
by the Unix/amd64 port.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13730 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-03 04:42:42 +00:00
Alain Frisch
d84ae41182
Item attributes on class fields.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13493 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-09 15:54:41 +00:00
Alain Frisch
0b9347f482
Represent exception declarations as constructor declarations in the Parsetree.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13442 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-25 15:49:10 +00:00
Alain Frisch
b0987fd693
Attributes on expresions (etc) are now stored in the expression record, to facilitate pattern matching on structured fragments of AST while ignoring attributes. Introducing a new Ast_helper module to help creating AST fragments.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/extension_points@13381 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-08 14:59:45 +00:00
Jacques Garrigue
c76b791ca4
Add warning 42 for disambiguated labels and constructors (compatibility with old versions)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13297 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-02-19 02:45:09 +00:00
Fabrice Le Fessant
8364a09153
PR#5461: fix warnings 31 in camlp4 compilation
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13296 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-02-18 12:09:06 +00:00
Alain Frisch
ef9fc7ab0f
#5904 : support for -ppx in the toplevel.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13278 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-25 09:12:31 +00:00
Alain Frisch
779580674f
Move ast_mapper to parsing/, make it part of compiler-libs, and add an interface. Plus minor code cleanup.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13249 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-16 16:10:29 +00:00
Jacques Garrigue
70036282aa
update dependencies
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13162 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-27 02:38:02 +00:00
Alain Frisch
3ffcd66100
#5741 : link pprintast into the compiler (unused for now, but it is available in compiler-libs).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13024 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-17 15:50:07 +00:00
Fabrice Le Fessant
807b1a2f90
Fix PR#5729 : Untypeast creates unexpected nodes
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12967 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-09-27 16:50:13 +00:00
Alain Frisch
936914100b
Add support for -ppx in ocamldep (and reuse preprocessing code in Pparse).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12769 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-24 16:24:44 +00:00
Fabrice Le Fessant
776c46fce8
Fix problem of size of bin-annot files
...
- Reset most of the fields of Env.t when saving bin-annot files
- Move debugger/envaux.ml to typing/, and add a function to
recover environements from bin-annot files.
- Move tools/typedtreeIter.ml to typing/
- Move the code of typing/typedtreeMap.ml from cmt_format.ml
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12702 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-12 11:02:18 +00:00
Fabrice Le Fessant
d39d43e55f
merge with branch bin-annot
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12516 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-30 14:52:37 +00:00
Alain Frisch
f0b95f3349
Keep locations for exception declaration. This gives better error messages and paves the way to #5524 .
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12193 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-03-06 19:03:17 +00:00
Xavier Leroy
2eecf2d4c0
PR#5487: addition of CFI directives and a few filename/linenumber info to generated amd64 and i386 assembly files.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12179 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-02-21 17:41:02 +00:00
Alain Frisch
1f36047e55
Direct implementation of the approximation of free identifiers + get rid of Unused_var module.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12050 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-01-18 17:41:12 +00:00
Alain Frisch
ff476d8431
Merge the unused_declarations branch.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12035 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-01-18 09:15:27 +00:00
Fabrice Le Fessant
869feeb007
Fix PR#5461
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12033 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-01-17 21:57:54 +00:00
Pierre Weis
4e63dbfff3
Module Lnenum has vanished!
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11251 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-10-28 21:18:03 +00:00
Jacques Garrigue
b1f8048f39
merge branches/located_errors
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11228 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-10-21 03:26:35 +00:00
Damien Doligez
c91db736b1
merge changes from 3.12.0 to 3.12.1
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11123 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-07-20 09:17:07 +00:00
Damien Doligez
575555eecd
merge changes from branching of 3.12 to release/3.12.0
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10643 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-08-02 14:37:22 +00:00
Alain Frisch
baceb82d5c
Keep location on type declarations.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/located_errors@10454 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-21 15:06:01 +00:00
Jacques Garrigue
1772822057
PR#4478: better error messages for type definition mismatches
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10447 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-21 03:36:52 +00:00
Xavier Leroy
2adec7d747
PR#5033: tools/objinfo made more general.
...
tools/dumpapprox removed, now subsumed by tools/objinfo.
Introduced asmcomp/cmx_format.mli and used consistently in asmcomp,
tools/objinfo, and otherlibs/dynlink
Note: ocamlbuild -based build procedure not updated yet.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10424 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-19 11:29:38 +00:00
Alain Frisch
e09a12388f
New -help-warnings command-line option.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10369 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-04 18:44:38 +00:00
Damien Doligez
dad5f517a4
addition of warning 30 changed dependencies
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10339 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-30 14:19:09 +00:00
Damien Doligez
83fb41dcf7
unified command-line arguments
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10260 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-13 10:44:25 +00:00
Damien Doligez
1b8095f404
PR#4940: get rid of naked end-of-lines in string constants + add warning 29
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9512 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-01-07 15:15:07 +00:00
Damien Doligez
ed32f569e3
merge changes from ocaml3110 to ocaml3111rc0
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9270 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-05-20 11:52:42 +00:00
Damien Doligez
1f95b17570
merge changes from 3.10.2merged to 3.11.0
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9153 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-12-03 18:09:09 +00:00
Michel Mauny
ad81f43c32
Optimize Lazy.force as a primitive, and optimize calls.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8973 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-08-01 16:35:47 +00:00
Damien Doligez
04aa158cb6
merge changes from 3.10.1 to 3.10.2
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8823 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-02-29 14:21:22 +00:00
Damien Doligez
e9a9bf9613
PR#3114 make all error messages start with a location and "Error: "
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8705 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-12-04 13:38:58 +00:00
Damien Doligez
16e4a68197
PR#4243 partial solution
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8615 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-22 19:01:50 +00:00