Browse thread
Bytecode object files structure
- Pierre-Etienne Meunier
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: | 2006-11-12 (14:40) |
From: | Pierre-Etienne Meunier <pierreetienne.meunier@e...> |
Subject: | Bytecode object files structure |
Hi, I'm trying to decrypt .cmo files produced by simple programs, such as 1+1;; or print_string "string";; or List.length [1;2;3;4;5];; According to the source of Ocaml, there's something called the "cmo_magic_number", systematically written at the beginning of all .cmo files. Does it have a real function for executing the programs, or is it just a way to make sure the file contains ocaml bytecode ? Then, there's the address of what seems to be the last bytecode instruction. Then, the bytecode instructions, as documented in opcodes.ml. After that, I can't understand anything : there vaguely seems to be some information related to linking or so... What is the precise structure of this part ? Is there some kind of a bytecode assembler ? Thanks, P.E. Meunier (pierreetienne.meunier@ens-lyon.fr)