Xavier Leroy
b7edfb670f
Erreur dans Nativeint.cmp
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1324 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-05 15:35:50 +00:00
Xavier Leroy
274f164366
Representer les constantes entieres par le type Nativeint.t
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1311 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-04 10:19:51 +00:00
Xavier Leroy
381616258c
Meilleur(?) scheduling de l'initialisation de $gp
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1233 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-01-02 14:15:23 +00:00
Xavier Leroy
456b225d78
Ajout de directives .frame, .mask pour eviter les plantages lorsqu'une
...
fonction C decide de faire une exception (e.g. exp(-1e10)).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1083 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-21 11:20:56 +00:00
Xavier Leroy
bc96b0f934
Correction du mode d'adressage addr - ofs.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1076 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-16 15:21:51 +00:00
Xavier Leroy
706e26ad1b
Utiliser un overflow trap pour detecter les acces hors des tableaux.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1070 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-09 13:36:48 +00:00
Xavier Leroy
ca8981ba5b
Sauver l'adresse courante quand on se branche a call_array_bound_error.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1058 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-08 09:31:24 +00:00
Xavier Leroy
4d78025b54
Fonctions de sortie des chaines deplacees entierement dans Emitaux.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@989 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-09-18 13:23:56 +00:00
Xavier Leroy
48bc00c491
Bug dans la nouvelle sequence d'appel de caml_call_gc.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@826 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-17 15:59:09 +00:00
Xavier Leroy
33029f6ed5
Push des arguments d'un appel externe
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@820 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-16 14:17:59 +00:00
Xavier Leroy
2301d778e7
Renommage en Objective Caml
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@782 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-04-30 14:53:58 +00:00
Jérôme Vouillon
7974a9d8b1
Extension objets.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@756 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-04-22 11:15:41 +00:00
Xavier Leroy
3f8f3d67f4
Toujours sauver et restaurer $gp si la fonction contient un try...with...
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@703 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-03-15 17:35:35 +00:00
Xavier Leroy
669bf28452
Ajout des instructions negf et absf (negation flottante, valeur
...
absolue flottante).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@682 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-03-07 13:45:17 +00:00
Xavier Leroy
0b95ce66d8
proc_mips: as -nocpp
...
les autres: ajout de la table des segments de donnees structurees
produites par le generateur de code.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@645 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-02-20 10:59:12 +00:00
Xavier Leroy
8f5e150e48
Nettoyage portage PowerPC. Ajout de Config.model.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@597 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-01-07 17:00:35 +00:00
Xavier Leroy
0a5c670df0
closure: decurryfication faite plus tot.
...
emit_alpha: switch compile de maniere plus compacte.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@547 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-19 10:18:05 +00:00
Xavier Leroy
06c105eff2
Retour en arriere sur les stores initialisants. Completement inefficace.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@546 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-17 16:24:34 +00:00
Xavier Leroy
f6da05e9ad
Scheduling plus agressif des remplissages de blocs alloues
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@545 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-17 15:45:28 +00:00
Xavier Leroy
b89eaae0b7
Modif du traitement des acces hors bornes.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@505 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-05 13:07:08 +00:00
Xavier Leroy
e5ef0b6f16
Changement des comparaisons flottantes pour etre conforme a IEEE.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@482 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-28 14:25:57 +00:00
Xavier Leroy
feac66d0ed
MAJ pour la nouvelle convention de nommage des registres vivants (2n+1 au lieu de -1-n)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@470 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-26 20:17:06 +00:00
Xavier Leroy
bd6a78bbe5
asmlink: balayage des fichiers dans le mauvais ordre.
...
emit_alpha: typo dans un nom d'instruction.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@402 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-06 11:04:55 +00:00
Xavier Leroy
ac43578677
Amelioration du flottant dans la version Intel
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@397 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-05 17:28:42 +00:00
Xavier Leroy
a29f056eb7
cmmgen: faire attention aux debordements quand on convertit un entier
...
en sa representation 2n+1.
cmm, printcmm, emit*: ajout de Cintlit au type Cmm.data_item.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@360 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-26 16:23:25 +00:00
Xavier Leroy
a019da159a
Introduction de Lreloadretaddr.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@217 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-08-25 08:46:03 +00:00
Xavier Leroy
441a8baaae
selection: simplification du cas Istore.
...
scheduling: nettoyages mineurs.
emit_*: inutile de masquer l'adresse de retour quand on fait un tailcall.
emit_sparc: remplissage manuel des delay slots
proc_alpha, proc_mips, proc_i386: suppression du scheduling.
proc_alpha: ne pas utiliser le registre $23.
proc_sparc: desactivation du scheduler externe
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@208 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-08-24 13:21:58 +00:00
Xavier Leroy
937fece4e3
Introduction de Lcondbranch3.
...
coloring: plus de variete dans le choix d'un registre.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@201 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-08-12 14:26:23 +00:00
Xavier Leroy
e4066357b1
Ajout des notices de copyright
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@195 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-08-09 15:06:35 +00:00
Xavier Leroy
d2ac820e41
emit_alpha: on gratte un cycle sur le Lswitch a 3 cas.
...
emit_sparc: bug dans le transfert reg flottant -> regs entiers non alignes.
emit_i386: faire pop apres l'appel d'une fonction C retournant un flottant;
optimisation cmpl $0 -> testl
proc_i386: plus de contraintes sur div et mod.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@175 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-30 14:26:43 +00:00
Xavier Leroy
ea3c75ad03
cmmgen: rectification acces generique aux tableaux de flottants.
...
emit_alpha: modifs mineures sur $gp.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@162 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-28 12:19:50 +00:00
Xavier Leroy
ff10bd838d
cmmgen: beaucoup plus d'unboxing de flottants.
...
emit_alpha: recharger ldgp apres un appel direct de fonction C.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@150 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-27 17:38:53 +00:00
Xavier Leroy
4878271adf
Suppression de Cmodify / Imodify.
...
Strength reduction sur les multiplications, divisions, modulo de
puissances de 2.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@147 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-25 13:04:41 +00:00
Xavier Leroy
428f9d2303
emit_i386: MAJ et tests.
...
emit_alpha: utiliser subq pour les comparaisons + branchements.
linearize: suprression moves vides, discard_dead_code ds Lraise.
selection: try...with en tail position.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@135 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-24 12:44:17 +00:00
Xavier Leroy
2ee785a0c7
MAJ portage Sparc.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@122 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-18 17:40:23 +00:00
Xavier Leroy
fafb9d5084
Production des exceptions predefinies par le linker natif.
...
Masquage du bit "frame scanned" sur l'adresse de retour quand on fait
un tailcall.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@114 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-18 08:40:44 +00:00
Xavier Leroy
b826ff65bc
Ajout des tests Ieventest et Ioddtest dans Mach.operation
...
Meilleure traduction lambda -> C-- pour les definitions de structures
toplevel.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@109 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-17 16:10:15 +00:00
Xavier Leroy
882355e58b
emit_alpha, asmlink: generation d'une directive .file.
...
closure: mecanique de partage des cas de switch revue.
cmmgen: on evite d'emettre plusieurs fois la meme fonction (peut se
produire suite a un departage de orpat).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@95 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-12 15:32:09 +00:00
Xavier Leroy
06dd9ab2de
emit_alpha: Idiv, Imod ont besoin de $gp.
...
interf: diminuer le poids des preferences dans les branches des
conditionnelles.
selection: mettre contains_calls a true s'il y a un trywith
(necessaire pour le Mips).
spill: backtrack sur le spilling retarde, qui ne marche pas du tout.
(Il retarde le spilling jusqu'apres un point de destruction!)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@88 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-12 14:25:41 +00:00
Xavier Leroy
c226d5efeb
Branchement du GC de la version bytecode sur le compilateur natif
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@72 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-10 09:48:27 +00:00
Xavier Leroy
bbbf6d0164
Ajout construction "checkbounds" dans C--.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@71 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-07 16:42:05 +00:00
Xavier Leroy
5c09b581c8
On rend $gp callee-save et on fait ldgp seulement si necessaire
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@70 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-07 16:14:06 +00:00
Xavier Leroy
679ed6c0b3
Passage au truc d'Appel pour les fermetures de fonctions mutuellement
...
recursives.
Changement du layout de try ... with ...
Correction de bugs dans la generation des descripteurs de frames.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@64 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-07 12:07:07 +00:00
Xavier Leroy
48514aaca8
Integration du generateur de code et du compilateur.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@51 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-02 16:41:48 +00:00
Xavier Leroy
41bd2b6153
Fermetures representees en un seul bloc
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@49 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-06-22 10:11:18 +00:00
Xavier Leroy
ba79d4bd1f
Iloop est maintenant une boucle infinie, on en sort par catch...exit.
...
Ca supprime Ilooptest, Ialwaystrue, Ialwaysfalse.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@36 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-06-15 16:08:53 +00:00
Xavier Leroy
3ceaa85c72
Premiere version.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@34 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-06-15 08:17:29 +00:00