Commit Graph

575 Commits (4e8b7a4808f928e6dba47a2bb768c83dbd426d2d)

Author SHA1 Message Date
Xavier Leroy 9af488cbbd PR#5287: Optimized handling of partially-applied functions
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11086 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-06-12 10:04:46 +00:00
Xavier Leroy be266ab70f Support inlining of functions containing structured constants.
These structured constants are shared between all inlinings.
Contributed by Fabrice Le Fessant.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11007 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-03-29 07:58:53 +00:00
Pierre Weis be0282079d Ignoring compiled files.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10990 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-03-17 23:32:51 +00:00
Damien Doligez a53ce2df70 add option -runtime-variant
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10982 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-03-17 16:18:05 +00:00
Xavier Leroy 80384c6d84 PR#5237: incorrect .size directives generated for x86-32 and x86-64
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10981 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-03-13 13:36:00 +00:00
Xavier Leroy 7fbcc30f3f AMD64/MacOS X: wrong symbol names for caml_negf_mask and caml_absf_mask in -shared mode
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10488 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-06-02 08:55:35 +00:00
Xavier Leroy 9d27a7fc8e Slightly better code generated for floating-point comparisons.
Windows-MSVC port updated as well but not tested yet.
The testsuite contains appropriate tests (in tests/basic/equality.ml).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10460 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-24 15:26:23 +00:00
Damien Doligez 5e67123bf6 PR#4975: spelling mistakes "overriden" and "informations"
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10450 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-21 12:00:49 +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
Xavier Leroy 8e5b81144b PR#5027: method! for overriding
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10296 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-22 12:51:06 +00:00
Xavier Leroy 207b0ec0b5 PR#5029: typo in names of lib functions for float32<->float64 conversion.
PT#5027: method! to avoid warning.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10295 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-22 12:39:40 +00:00
Xavier Leroy 26b9064703 PR#5030: start data labels higher. Also, use emit_floatNN_directive.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10293 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-22 09:33:18 +00:00
Xavier Leroy df680514f5 PR#4971: wrong variable name in alpha/proc.ml; cleanups in lex/cset.mli and bytecomp/lambda.mli
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10268 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-18 09:02:40 +00:00
Jacques Garrigue ee36e1d1c5 merge branches/override
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10250 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-08 03:58:41 +00:00
Damien Doligez b3cb104e50 mistake in the size of allocated integers (again)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9605 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-01-29 14:42:09 +00:00
Damien Doligez 7e530ac755 mistake in the size of allocated integers
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9600 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-01-29 08:15:03 +00:00
Damien Doligez 04b1656222 clean up spaces and tabs
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9547 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-01-22 12:48:24 +00:00
Damien Doligez bdc0fadee2 merge changes from release/3.11.1 to release/3.11.2
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9540 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-01-20 16:26:46 +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
Xavier Leroy 4e50c497a8 Updating the ARM port, continued:
- Reserve register r9 and treat r10 as callee-save, as per the EABI.
- Treatment of alloc_limit register.
- Fixed bug in inlined allocation sequence.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9252 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-05-04 13:46:46 +00:00
Xavier Leroy ace551abfb PR#4759: bad merge of emit_call, etc
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9215 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-03-31 11:50:48 +00:00
Xavier Leroy 5732a03e65 Updated ARM port to new ABI (EABI), with software floating-point.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9211 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-03-31 09:45:55 +00:00
Xavier Leroy 1a7d4a3293 Added and used Reg.createv_like.
Selectgen: new methods regs_for, enables ports to store float values
in pairs of integer registers.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9210 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-03-31 09:44:50 +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
Xavier Leroy b1fbba245a PR#4558 part 1: unboxing of floats and boxed ints across 'let' and similar constructs
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8981 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-08-05 13:35:20 +00:00
Xavier Leroy 16b9465048 PR#4583: do not compare Lambda terms with =, use Lambda.same instead
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8966 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-08-01 12:52:14 +00:00
Xavier Leroy 1f93465a0e PR#4564 (partial): mark stack as non-executable on Linux/ELF
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8962 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-08-01 08:04:57 +00:00
Alain Frisch 1ba87b442b Output references to the native version of the primitives in ocamlopt
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8930 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-07-24 05:35:22 +00:00
Xavier Leroy 91d39feb72 PR#4223, PR#1508: added unsafe variants of Bigarray.Array{1,2,3}.{get,set}
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8911 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-07-14 09:09:53 +00:00
Xavier Leroy 2bfb816cbf PR#4462: forgot bigarrayset in is_pure
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8847 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-03-18 14:25:40 +00:00
Alain Frisch 7b90710be5 Add explicit references to external primitive symbols.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8800 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-01-31 09:13:19 +00:00
Damien Doligez 9ea5edac9a merge changes 3.10.0 -> 3.10.1
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8768 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-01-11 16:13:18 +00:00
Alain Frisch 7be32fff1b Remove unused variable.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8524 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-15 18:17:14 +00:00
Alain Frisch 32abe25b89 Same in native code.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8523 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-15 16:09:57 +00:00
Alain Frisch 1b059475c8 Cleanup and factorization of linker-related code.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8521 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-15 13:21:15 +00:00
Alain Frisch 3f12bd653a Use the variable mksharedlib from the configure script to build cmxs.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8510 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-12 17:18:32 +00:00
Alain Frisch a0e661f623 Roll-back: natdynlink won't be ported to PowerPC anytime soon.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8499 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-09 15:06:57 +00:00
Alain Frisch 4944313b0c Make it work under Win64.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8497 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-08 18:03:15 +00:00
Alain Frisch 3958a92c72 Merge the natdynlink branch into HEAD.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8477 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-06 15:16:56 +00:00
Xavier Leroy 9ccb911666 Can select which assembler to use at configuration time (PR#4171)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8462 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-10-30 12:37:16 +00:00
Damien Doligez 4167841b16 fusion de la version 3.10.0
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8416 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-10-08 14:19:34 +00:00
Damien Doligez 1dd68ccf50 ajout des annotations pour variables et appels terminaux
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8232 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-05-16 08:21:41 +00:00
Xavier Leroy 25bb3c6f12 Make name of object file for package initialization unique (needed for the MSVC port)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7945 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-03-01 13:38:54 +00:00
Xavier Leroy 66b5626778 Stack backtraces for Win64/AMD64 (bug fixes)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7942 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-03-01 10:26:51 +00:00
Xavier Leroy d42ff170b6 Stack backtraces for Win64/AMD64 (not tested yet)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7941 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-03-01 10:12:38 +00:00
Nicolas Pouillard 81cfc29b31 Better handling of multiple extensions (foo.d.cmo, foo.p.cmx...)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7909 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-02-23 13:44:51 +00:00
Xavier Leroy 9dd6085165 PR#4152: avoid repeated calls to transl in transl_unbox_let
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7892 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-02-22 12:13:00 +00:00
Alain Frisch 5b23012b0e wrong branch... rollback
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7865 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-02-15 18:36:08 +00:00
Alain Frisch a06311fc5f starting to implement native dynlink for Unix
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7864 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-02-15 18:32:09 +00:00
Damien Doligez f700284aac fusion des changements 3.09.3 -> release309_merge310
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7849 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-02-09 13:31:15 +00:00