Damien Doligez
af0796ea30
fix C compiler warnings and bug introduced by commit 13436
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13437 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-22 18:36:22 +00:00
Damien Doligez
3367fcc3a7
fix whitespace and over-long lines
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13434 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-22 18:21:34 +00:00
Gabriel Scherer
725da3dcc9
user-exposed abstract type for raw backtraces in Printexc.ml (original patch from Jacques-Henri Jourdan)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13394 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-11 19:04:12 +00:00
Damien Doligez
c63f9e0957
fix a few problems with whitespace and over-long lines
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13393 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-09 22:38:52 +00:00
Alain Frisch
ba00d09386
Revert bad commit.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13268 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-23 08:41:02 +00:00
Alain Frisch
20a4b99758
#5902 : adapt standard ppx driver to support extra arguments.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13267 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-23 08:37:01 +00:00
Alain Frisch
45936b5fa5
Fix #4887 (input_char after close_in crashes ocaml, msvc runtime). Patch by Christoph Bauer.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13257 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-17 09:04:53 +00:00
Benedikt Meurer
448571ed7b
[arm] Add CFI directives to the native runtime.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13231 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-13 17:20:36 +00:00
Benedikt Meurer
4df940cae9
[amd64] Avoid unbalanced CFA offsets.
...
This fixes the following warnings generated by ld on Mac OS X:
- ld: warning: could not create compact unwind for _caml_raise_exn: stack subq instruction is too different from dwarf stack size
- ld: warning: could not create compact unwind for _caml_raise_exception: stack subq instruction is too different from dwarf stack size
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13227 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-13 14:22:17 +00:00
Benedikt Meurer
9032ddf683
PR#5886: Small changes to compile for Android.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13225 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-13 13:05:37 +00:00
Benedikt Meurer
dc0776f551
#5798 : Apply patch to add VFPv2 and ARMv6 hard-float support (Jeffrey Scofield, Anil Madhavapeddy).
...
[PATCH] Detect and support armv6/VFPE2, which is sufficient to get
ocamlopt working on the Raspberry Pi hardfloat Debian variant
Original patch: Jeffrey Scofield via http://psellos.com/pub/ocamlxarm/ocaml4-vfpv2.diff
Fixes from: Anil Madhavapeddy <anil@recoil.org>
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13042 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-24 06:20:45 +00:00
Damien Doligez
def31744f9
remove all $Id keywords
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13013 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-10-15 17:50:56 +00:00
Xavier Leroy
9ac1d4937b
PR#5707: in AMD64 port, exchange the roles of r10-r11 and r12-r13,
...
so that r10 and r11 are no longer used for parameter passing,
and can therefore be destroyed by the dynamic loader without harm.
(Cherry-picked from version/4.00, commit 12907).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12908 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-09-08 16:53:39 +00:00
Xavier Leroy
3e583a982b
PR#5700, take 2: another misaligned call to caml_stash_backtrace.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12818 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-03 07:43:16 +00:00
Xavier Leroy
d67f25572e
PR#5700: crash with native-code stack backtraces under MacOS 10.8 x86-64
...
(owing to wrong stack alignment in caml_raise_exception)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12816 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-02 12:47:08 +00:00
Alain Frisch
d7081111cd
Remove empty and useless file natdynlink.h.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12809 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-01 15:37:29 +00:00
Damien Doligez
997a678d5e
clean up TABs and whitespace
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12799 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-30 18:04:46 +00:00
Damien Doligez
0c3a7de507
merge changes from 4.00 branching to 4.00.0 (part 1)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12784 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-26 19:21:54 +00:00
Fabrice Le Fessant
808d083b9f
Revert commit r12756 containing unwanted changes
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12757 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-22 15:15:55 +00:00
Fabrice Le Fessant
5e74e6f0cc
Fix PR#5695
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12756 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-22 15:12:43 +00:00
Fabrice Le Fessant
1b81bef5b9
Add more CFI directives in i386/amd64 assembly files in asmrun
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12674 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-09 13:08:20 +00:00
Fabrice Le Fessant
f0eff81679
Merge commit 12664 from 4.00 on trunk/
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12665 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-09 08:46:10 +00:00
Fabrice Le Fessant
87f6cd4779
modified Windows Makefiles to install compiler internals
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12496 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-29 10:48:19 +00:00
Xavier Leroy
1e3bd1c332
Install compiler internals (as libraries + compiled interfaces + start modules)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12469 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-17 16:04:13 +00:00
Xavier Leroy
4e5eb94ed9
PR#5215: Marshalling of closures now supported if the closures come from dynamically-loaded code.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12229 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-03-13 14:50:41 +00:00
Damien Doligez
6c24f4f90b
merge version 3.12 from 3.12.1 to r12205
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12210 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-03-08 19:52:03 +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
Xavier Leroy
b07b3032c0
- PR#5509: misclassification of statically-allocated empty array that
...
falls exactly at beginning of an otherwise unused data page.
- i386/emit_nt.mlp: add zero word at end of data segment, like in other ports.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12166 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-02-18 16:56:29 +00:00
Xavier Leroy
5ad47ce4e6
Backtrack previous changes for PowerPC/Linux, which turns out to lack what we need for turning stack overflows into exceptions
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12160 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-02-17 10:43:50 +00:00
Xavier Leroy
339bcbb2c6
PR#5064, PR#5485: try to ensure that 4K words of stack are available
...
before calling into C functions, raising a Stack_overflow exception
otherwise. This reduces (but does not eliminate) the risk of
segmentation faults due to stack overflow in C code.
Implemented for i386, amd64 and power, under Linux and MacOSX.
Plus: remove some more stuff related to obsoleted platforms (IA64, SunOS 4).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12159 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-02-17 10:12:09 +00:00
Damien Doligez
e7f5b858c2
More renaming to OCaml
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12149 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-02-10 16:15:24 +00:00
Benedikt Meurer
b5eec7890b
Fix various compiler warnings in asmrun.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12128 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-02-05 09:56:23 +00:00
Benedikt Meurer
e76218f17d
[arm] Update copyright notices as suggested by Xavier.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12125 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-02-05 08:47:16 +00:00
Benedikt Meurer
05627e0de4
Merge the new ARM backend into trunk (PR#5433).
...
Initial merge of the new ARM backend (commit ec5b444c7f) from my development
repository at https://github.com/bmeurer/ocaml-arm/tree/ec5b444c7f .
Compared to the old ARM backend, this one does the following:
- Support for both software and hardware floating-point (VFPv3).
- Properly supports interworking with Thumb/Thumb-2 code for both OCaml and C
code.
- Supports dynamic linking and large memory models (PR#5049).
- Optional support for position-independent code via a command line option
-fPIC. This is disabled by default and not required for natdynlink.
- Can emit both ARM and Thumb-2 code, with avg. code size savings of 28% for
Thumb-2 (quite close the optimal 30% advertised by ARM Ltd.).
- Supports both AAPCS (armel) as well as extended VFP calling conventions
(armhf).
- Supports several special ARM instructions to reduce code size and latency.
- Uses standard ARM EABI runtime functions instead of relying on GCC internals.
- Supports exception backtraces.
- Supports profiling using gprof.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12124 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-02-04 10:15:24 +00:00
Xavier Leroy
38e4e84f7e
PR#5179 continued: no extra stack adjustment in caml_c_call
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11931 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-22 08:51:57 +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
a69f9be8c5
PR#4746: wrong detection of stack overflows in native code under Linux
...
(quick fix, will have to find something better)
testsuite/tests/runtime-errors: make the test output independent of
the stack size; add a "ulimit -s" just to make sure stack is limited.
testsuite/tests/asmcomp: updated to compile again.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11898 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-20 14:38:53 +00:00
Xavier Leroy
4af724cf54
Removed the obsolete native-code generators for Alpha, HPPA, IA64 and MIPS.
...
Part 4: cleaning up some more references & specific code for these archs.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11886 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-18 09:52:52 +00:00
Xavier Leroy
3e42214295
Removed the obsolete native-code generators for Alpha, HPPA, IA64 and MIPS.
...
So long and thanks for all the fish.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11882 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-17 11:12:50 +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
958c48049f
PR#5336: add .type directives in ARM code
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11203 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-09-18 08:09:34 +00:00
Xavier Clerc
cb7818e6de
PR#5344: some predifined exceptions need special printing
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11187 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-09-08 08:34:43 +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
90664f4ea1
uniform .ignore system
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11133 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-07-20 15:37:36 +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
31b0292413
renaming "Objective Caml" to "OCaml" (first pass)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11015 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-04-26 12:16:50 +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
Damien Doligez
fa73e25120
PR#4243: make .c.p.o rule thread-safe
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10921 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-01-06 14:23:20 +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
Damien Doligez
dc7affa4b7
fix Windows MSVC build + ignores
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10440 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-05-19 14:52:34 +00:00