summaryrefslogtreecommitdiff
path: root/asmrun
Commit message (Collapse)AuthorAgeFilesLines
* update dependencies and bootstrap compilersDamien Doligez2012-04-101-45/+54
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/version/4.00@12328 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#5215: Marshalling of closures now supported if the closures come from ↵Xavier Leroy2012-03-132-1/+18
| | | | | | dynamically-loaded code. git-svn-id: http://caml.inria.fr/svn/ocaml/version/4.00@12227 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* merge version 3.12 from 3.12.1 to r12205Damien Doligez2012-03-081-0/+12
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12210 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#5487: addition of CFI directives and a few filename/linenumber info to ↵Xavier Leroy2012-02-212-0/+43
| | | | | | generated amd64 and i386 assembly files. git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12179 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* - PR#5509: misclassification of statically-allocated empty array thatXavier Leroy2012-02-181-1/+3
| | | | | | | | 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
* Backtrack previous changes for PowerPC/Linux, which turns out to lack what ↵Xavier Leroy2012-02-171-10/+0
| | | | | | we need for turning stack overflows into exceptions git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12160 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#5064, PR#5485: try to ensure that 4K words of stack are availableXavier Leroy2012-02-179-687/+166
| | | | | | | | | | | 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
* More renaming to OCamlDamien Doligez2012-02-1013-77/+77
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12149 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* Fix various compiler warnings in asmrun.Benedikt Meurer2012-02-052-3/+4
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12128 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* [arm] Update copyright notices as suggested by Xavier.Benedikt Meurer2012-02-051-5/+5
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12125 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* Merge the new ARM backend into trunk (PR#5433).Benedikt Meurer2012-02-042-218/+318
| | | | | | | | | | | | | | | | | | | | | | | | | 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
* PR#5179 continued: no extra stack adjustment in caml_c_callXavier Leroy2011-12-221-2/+2
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11931 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#5179: giant steps towards a Mingw64 port.Xavier Leroy2011-12-212-57/+148
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11927 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#4746: wrong detection of stack overflows in native code under LinuxXavier Leroy2011-12-201-1/+10
| | | | | | | | | | (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
* Removed the obsolete native-code generators for Alpha, HPPA, IA64 and MIPS.Xavier Leroy2011-12-181-35/+1
| | | | | | | 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
* Removed the obsolete native-code generators for Alpha, HPPA, IA64 and MIPS.Xavier Leroy2011-12-175-2117/+0
| | | | | | | So long and thanks for all the fish. git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11882 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* AMD64/MacOSX code generator: make local asm labels really local. (L100 ↵Xavier Leroy2011-10-151-37/+39
| | | | | | instead of .L100) git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11221 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#5336: add .type directives in ARM codeXavier Leroy2011-09-181-0/+12
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11203 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#5344: some predifined exceptions need special printingXavier Clerc2011-09-081-1/+9
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11187 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* renaming of Objective Caml to OCaml and cleanup of copyright headersDamien Doligez2011-07-2724-90/+104
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11156 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* uniform .ignore systemDamien Doligez2011-07-201-1/+0
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11133 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* merge changes from 3.12.0 to 3.12.1Damien Doligez2011-07-202-64/+64
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11123 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* renaming "Objective Caml" to "OCaml" (first pass)Damien Doligez2011-04-261-0/+2
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11015 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* add option -runtime-variantDamien Doligez2011-03-171-2/+16
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10982 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#4243: make .c.p.o rule thread-safeDamien Doligez2011-01-062-8/+7
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10921 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* merge changes from branching of 3.12 to release/3.12.0Damien Doligez2010-08-021-618/+618
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10643 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* fix Windows MSVC build + ignoresDamien Doligez2010-05-191-2/+0
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10440 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* ignore windows-specific generated filesDamien Doligez2010-05-191-0/+3
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10437 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* New -help-warnings command-line option.Alain Frisch2010-05-041-618/+618
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10369 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* Updated Windows makefilesXavier Leroy2010-04-281-1/+1
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10325 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* - Refactoring of otherlibs/systhreadsXavier Leroy2010-04-273-0/+21
| | | | | | | | | | | - PR#4702: added C functions to register threads not created by Caml - PR#5013: wrong implementation of condition variables under Win32 - PR#4979: wrong error code handling under Win32 - Added standard include <caml/threads.h> - Added "stack_size" field in GC statistics. git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10315 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* fixed several build problemsDamien Doligez2010-04-223-903/+484
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10298 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#4541 make debugger compatible with fork()Damien Doligez2010-04-202-3/+5
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10287 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#4795: PIC version of amd64.SXavier Leroy2010-04-191-14/+19
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10270 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#4795: support for PIC code in asmrun/amd64.SXavier Leroy2010-03-291-64/+127
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10218 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#5008: forgot to reserve bottom 32 bytes of stack before calling the GC ↵Xavier Leroy2010-03-281-1/+3
| | | | | | (AMD64/MSVC port only) git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10215 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* clean up spaces and tabsDamien Doligez2010-01-228-133/+130
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9547 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* merge changes from release/3.11.1 to release/3.11.2Damien Doligez2010-01-201-10/+3
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9540 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* merge changes from ocaml3110 to ocaml3111rc0Damien Doligez2009-05-201-0/+32
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9270 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* Updating the ARM port, continued:Xavier Leroy2009-05-042-105/+115
| | | | | | | | | - 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
* Updated ARM port to new ABI (EABI), with software floating-point.Xavier Leroy2009-03-311-24/+7
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9211 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* merge changes from 3.10.2merged to 3.11.0Damien Doligez2008-12-034-113/+171
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9153 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#4390: ajout caml_raise_with_argsXavier Leroy2008-09-181-0/+15
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9030 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#4564 (partial): mark stack as non-executable on Linux/ELFXavier Leroy2008-08-012-0/+10
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8962 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* Cleanup natdynlink. Automatic initialization of Dynlink (bytecode and native ↵Alain Frisch2008-04-221-23/+19
| | | | | | code). Do not use RTLD_GLOBAL for Dynlink.loadfile_private in native code. git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8873 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* Ability to print and capture exception backtraces (see stdlib module Printexc)Xavier Leroy2008-03-143-31/+116
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8839 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* New API for registration of global memory roots that are scanned in a ↵Xavier Leroy2008-03-101-9/+3
| | | | | | generational manner git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8828 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* merge changes from 3.10.1 to 3.10.2Damien Doligez2008-02-293-12/+39
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8823 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* merge changes 3.10.0 -> 3.10.1Damien Doligez2008-01-114-24/+38
| | | | git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8768 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
* PR#4448: replace dense page table by sparse hash table.Xavier Leroy2008-01-033-64/+31
| | | | | | | | Introduction and use of macros Is_in_value_area, Is_in_heap_or_young. Removal of USE_MMAP_INSTEAD_OF_MALLOC. git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8743 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02