Hello,

As mentioned earlier we have a student working on an implementation of the 
Linear Scan Register Allocator [1] for ocamlopt (and thereby ocamlnat). It took 
some time, but now there's a first working patch which looks promising. This 
work is done by Marcell Fischbach as part of his diploma thesis. The idea is to 
use the linear scan algorithm to drive the register allocation in the native 
top-level ocamlnat at some point, as suggested by Fabrice Le Fessant [2].

Marcell is now working to implement a proof-of-concept of an inline assembler 
for ocamlnat on i386 based on code from Alain Frisch an Fabrice Le Fessant. The 
result will also be contributed once ready, and will be used to effectively 
compare ocamlnat and the byte-code ocaml top-level.

The linear scan implementation reuses as much of the existing ocamlopt 
functionality as possible, so additional maintenance overhead should be 
manageable. Comments and suggestions are welcome of course. Please keep Marcell 
CC'ed with any replies as he's not subscribed to the list.

greets,
Benedikt


[1] http://portal.acm.org/citation.cfm?id=330250
[2] 
http://caml.inria.fr/pub/ml-archives/caml-list/2010/11/a1b0ed0934ff51df4ac07c5e9da6e9d6.en.html


-- 
Caml-list mailing list.  Subscription management and archives:
https://sympa-roc.inria.fr/wws/info/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

Attachment: ocaml-linear-scan-20110801.diff
Description: Binary data

Reply via email to