ocaml/asmrun
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
..
.depend merge changes from branching of 3.12 to release/3.12.0 2010-08-02 14:37:22 +00:00
.ignore uniform .ignore system 2011-07-20 15:37:36 +00:00
Makefile renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00
Makefile.nt PR#5179: giant steps towards a Mingw64 port. 2011-12-21 16:31:01 +00:00
amd64.S PR#5179 continued: no extra stack adjustment in caml_c_call 2011-12-22 08:51:57 +00:00
amd64nt.asm renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00
arm.S Merge the new ARM backend into trunk (PR#5433). 2012-02-04 10:15:24 +00:00
backtrace.c renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00
fail.c PR#5344: some predifined exceptions need special printing 2011-09-08 08:34:43 +00:00
i386.S renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00
i386nt.asm renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00
ia64.S renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00
natdynlink.c renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00
natdynlink.h Merge the natdynlink branch into HEAD. 2007-11-06 15:16:56 +00:00
power-elf.S renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00
power-rhapsody.S renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00
roots.c renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00
signals_asm.c PR#4746: wrong detection of stack overflows in native code under Linux 2011-12-20 14:38:53 +00:00
signals_osdep.h Merge the new ARM backend into trunk (PR#5433). 2012-02-04 10:15:24 +00:00
sparc.S renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00
stack.h renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00
startup.c renaming of Objective Caml to OCaml and cleanup of copyright headers 2011-07-27 14:17:02 +00:00