Commit Graph

47 Commits (05627e0de4a50067f36d1eca9dcc9ebd5736c3f8)

Author SHA1 Message Date
Benedikt Meurer 78e2ed88d8 [amd64] Don't override insert_op.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12122 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-02-04 10:00:09 +00:00
Benedikt Meurer fb327a7c2b Also pass Cmm.memory_chunk to select_addressing.
The rational behind this change is that for the ARM instruction sets, the
valid range for address offsets depends on the type of data being loaded
or stored.



git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12120 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-02-04 09:43:33 +00:00
Xavier Leroy ac0aa0778d PR#5179: giant steps towards a Mingw64 port.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11927 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-21 16:31:01 +00:00
Xavier Leroy ca0c236919 PR#4869: rare collisions between assembly labels for code and data
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11887 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-18 10:00:56 +00:00
Xavier Leroy e10723e701 Merged proc_nt.ml into proc.ml in directories asmcomp/i386 and asmcomp/amd64.
This avoids much code duplication and is a baby step towards Mingw-64 bits 
support (PR#5179).  (There will be no need to create a third proc_xxx.ml
file for this configuration.)
Also, in amd64/emit_nt.mlp, the ml64 assembler didn't like my label subtractions, so I put the jumptable in code area instead of in data area.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11319 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-16 17:02:48 +00:00
Xavier Leroy 854afdd4e9 Reverted most of previous change re: local labels in AMD64/MacOSX.
The wretched MacOSX "ld -shared" (under 10.6 at least) balks on
subtracting two local labels, while it deigns subtracting two
nonlocal labels.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11224 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-10-15 09:44:07 +00:00
Xavier Leroy fc82a408a3 AMD64/MacOSX code generator: make local asm labels really local. (L100 instead of .L100)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11221 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-10-15 08:55:43 +00:00
Xavier Leroy 012bc6eb1d PR#5319: Lswitch compilation for Win64 / MSVC. (Untested.)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11201 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-09-18 07:52:55 +00:00
Damien Doligez 3b507dd1aa renaming of Objective Caml to OCaml and cleanup of copyright headers
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11156 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-07-27 14:17:02 +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
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
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 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 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
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 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
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 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
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
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
Xavier Leroy 4b5512c74c Stack backtraces on uncaught exceptions in native code (merge of the opt_backtrace branch)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7812 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-01-29 12:11:18 +00:00
Xavier Leroy 24d7c3c7f7 Compatibilite avec versions plus recentes de ml64
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7810 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-01-24 14:14:28 +00:00
Xavier Leroy 8a2cea5444 Produce position-independent code by default. This makes it easier to embed Caml code in a shared library.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7784 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-01-01 13:07:35 +00:00
Xavier Leroy 5213cb0677 PR#4181: watch out for big constants in Ioffset_loc
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7771 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-12-16 09:58:09 +00:00
Damien Doligez fbea66a95e fusion des changements 3.09.2 -> 3.09.3
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7619 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-09-20 11:14:37 +00:00
Xavier Leroy 10bc3be245 Silence the ml64 assembler
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7406 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-05-09 16:00:57 +00:00
Xavier Leroy b34288b2a1 Issues with Iconst_int of a constant that exceeds 32 bits signed
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7401 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-05-05 14:58:14 +00:00
Xavier Leroy e3ac89c82d Suite essais Win64
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7398 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-05-05 13:50:14 +00:00
Xavier Leroy a8ac504984 First cut for AMD64/Win64 port of ocamlopt
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7395 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-05-04 12:43:40 +00:00
Damien Doligez 1279ab4b76 fusion des changements 3.09.1 -> 3.09.2
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7382 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-04-16 23:28:22 +00:00
Damien Doligez 125ea40d4c fusion 3.09.0 -> 3.09.1
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7307 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2006-01-04 16:55:50 +00:00
Xavier Leroy cc11c0447a Ajout production de code relogeable (option -fPIC)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7121 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-10-13 03:53:52 +00:00
Damien Doligez a4a3c10e70 fusion des modifs de 3.08.4
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7019 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-08-13 20:59:37 +00:00
Xavier Leroy fa9e17fc17 Unused variable
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6843 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2005-04-17 08:22:28 +00:00
Xavier Leroy 237006931a Fusion des modifs faites sur la branche release jusqu'a la release 3.08.0
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6552 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-07-13 12:19:15 +00:00
Xavier Leroy afe9198187 Support profiling pour AMD64/Linux
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6303 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-05-18 08:49:44 +00:00
Xavier Leroy 0b9f496f6f Constantes flottantes +0.0 / -0.0 (PR#2480)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6277 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-05-03 12:46:51 +00:00
Damien Doligez 258c929f64 PR#1914,PR#1956, suppression du portage Mac OS 9
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6060 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-01-05 20:26:19 +00:00
Damien Doligez 5a678d29f5 depollution suite (PR#1914 et PR#1956)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@6045 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2004-01-01 16:42:43 +00:00
Xavier Leroy de53ed7fb7 Bugs dans intop_imm(Idiv | Imod)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5635 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2003-06-30 11:29:26 +00:00
Xavier Leroy bc33391898 Portage AMD64
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5634 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2003-06-30 08:28:48 +00:00