Skip to content
jean-dao edited this page Apr 9, 2012 · 1 revision

Nous avons débuté le projet par le générateur de code LLVM sans, dans un premier temps, nous soucier de VMKit. Nous nous sommes penchés sur VMKit il y a peu de temps et par conséquent, son intégration n'est pas encore faite.

Représentation des données

Le problème principal auquel nous n'avons pas encore remédié et l'incompatibilité entre la représentation des données utilisée jusqu'à maintenant et la représentation utilisée par VMKit. Nous ne pourrons pas nous attaquer serieusement à l'intégration de VMKit tant que cela ne sera pas réglé.

Les différentes solutions sont décrites dans l'intégration de VMKit.

Garbage collection

Pour l'instant la 'garbage collection' n'est pas effectuée, notre générateur de code s'exécute bien dans l'environnement VMKit, mais l'allocation mémoire est encore effectuée par du code OCaml, et il n'y a aucune autre gestion mémoire effectuée: les fonctions nécessaire à MMTk ne sont pas encore implantées.

L'implantation de ces fonctions viendra une fois une représentation des données compatible trouvée.

Générateur à pile explicite

Une idée proposée par M. Chailloux est d'implanter une version de notre générateur de code à pile explicite pour comparer les performances obtenues avec celui à registres.

Utilisation du GC OCaml

Sans passer par VMKit et sans utiliser MMTk, se servir du GC OCaml. Cela nécessite sûrement de modifier les sources OCaml, le GC n'étant pas construit de façon modulaire comme MMTk.

Clone this wiki locally