Commit Graph

85 Commits (08fc4a377c9ffe69f718dde692d935ab291563e7)

Author SHA1 Message Date
Xavier Leroy fca6240f90 Revu compilation des boucles for pour le cas ou la borne est max_int (pour une boucle 'to') ou min_int (pour une boucle 'downto') (PR#415)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5277 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-11-18 10:50:49 +00:00
Damien Doligez 2b633bf048 amelioration de let rec
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5252 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-11-07 17:57:23 +00:00
Xavier Leroy 7f4a99759c Les affectations sur les bigarrays doivent renvoyer () (PR#1323)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5103 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-08-19 12:23:55 +00:00
Xavier Leroy 968e430bca Mauvaise traduction des Const_pointer dans les constantes structurees (attention au bit de poids fort :-)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@4908 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-06-08 15:19:16 +00:00
Xavier Leroy be551edb0a Complex bigarrays
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@4372 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-02-10 17:01:27 +00:00
Xavier Leroy 71cf31f0e2 Ajout du packaging d'unites de compilation (option -pack)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@4367 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-02-08 16:55:44 +00:00
Damien Doligez e962b870e8 bug lazy dans ocamlopt + diverses bricoles
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@4292 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-01-20 22:20:58 +00:00
Luc Maranget f825892b07 bug 785 (debordement entier cmmgen)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@4245 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2002-01-10 15:52:40 +00:00
Luc Maranget bd1a4e00c3 bug 539
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3773 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-09-21 15:59:16 +00:00
Luc Maranget 157c4e54c9 new Switch module
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3494 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-04-30 16:31:09 +00:00
Xavier Leroy 5bdf5bc1d9 Suppression re-partage des constantes structurees, ne sert pas a grand chose et introduit trop de differences semantiques par-rapport au compilateur bytecode
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3483 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-04-02 12:13:58 +00:00
Luc Maranget a9c4a16caa optimsation pm a donf
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3426 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-02-19 20:15:42 +00:00
Xavier Leroy 0790205e08 Forcer la troncature a 31 bits dans les conversions boxed int -> int (PR#269)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3379 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-02-05 08:48:13 +00:00
Xavier Leroy 36efd7ee97 Suppression de messages de debug qui etaient restes par erreur
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3375 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-01-25 14:40:54 +00:00
Xavier Leroy 2e64d3170c Revu et etendu l'unboxing des nombres dans les let
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3370 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-01-13 11:55:43 +00:00
Pierre Weis 2116da4220 Getting rid of obsolete boolean operators & and or
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3359 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-12-28 13:07:42 +00:00
Luc Maranget 89f252d93e or-pat avec variables et compil du switch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3303 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-10-02 14:08:30 +00:00
Luc Maranget d043fecf18 new or-pat compilation + exhaustiveness used in compilation
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3273 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-08-11 19:50:59 +00:00
Xavier Leroy 485d38567d Retour de Cconst_pointer et ajout de Cconst_natpointer (necessaires pour un bon typage du code C-- et donc des racines du GC, voire PR#58)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2972 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-03-17 13:24:17 +00:00
Jacques Garrigue a98163685e oublis Cconst_pointer -> Cconst_int
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2952 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-03-13 05:53:17 +00:00
Xavier Leroy 90c6a0e491 Suppression de Cconst_pointer, redondant
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2945 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-03-12 13:06:57 +00:00
Xavier Leroy c02c135946 Introduction de Double_u (doubles alignes sur un mot) par opposition a Double (doubles alignes naturellement). A tester.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2937 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-03-10 14:31:06 +00:00
Xavier Leroy 96cb7c30af Ajout des conversions int <-> int32 <-> int64
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2901 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-03-05 19:17:54 +00:00
Xavier Leroy c0feeaa7e5 Optimisation des acces aux bigarrays
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2873 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-28 15:45:50 +00:00
Xavier Leroy 864a8b5842 Erreur dans la taille des entiers alloues
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2872 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-28 09:03:00 +00:00
Xavier Leroy f2a2bf7d8b Nativeint.t -> nativeint.
Debug des entiers alloues sur 64 bits


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2840 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-21 19:38:09 +00:00
Xavier Leroy b09f44025c Ajout des types predefinis int32, int64, nativeint.
Ajout des primitives correspondantes dans le type lambda.
Optimisation de ces primitives dans le compilateur natif


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2839 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-21 18:14:56 +00:00
Xavier Leroy 1cac403368 Ajout des modules Int32, Int64 et Nativeint
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2807 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-11 15:09:27 +00:00
Xavier Leroy 44f0f8a5a4 Traitement plus uniforme des load et des store. Ajout load/store sur int32 et float32
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2779 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-04 12:43:18 +00:00
Damien Doligez 9968714ee2 optimisation des racines globales pour le GC mineur
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2733 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-01-05 13:16:31 +00:00
Jacques Garrigue 221224ae94 typo
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2671 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-12-06 17:10:36 +00:00
Xavier Leroy 45a18236df Revu compilation du filtrage des variants. Ajout de la primitive Pisint et de l'instruction bytecode ISINT.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2669 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-12-06 16:59:24 +00:00
Xavier Leroy cc0f32b054 Changement de la licence
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2553 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-11-17 18:59:06 +00:00
Xavier Leroy 1f5291367f Lier explicitement la limite haute d'une boucle for a une variable (car si c'est deja une variable, elle pourrait changer lors de l'execution de la boucle)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2508 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-11-09 14:41:24 +00:00
Jérôme Vouillon 7585ec9e29 Bug dans la compilation de ignore (!)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2459 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-11-03 18:29:20 +00:00
Xavier Leroy b22f481fa3 Mieux compiler while(not cond)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2350 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-03-10 13:50:24 +00:00
Xavier Leroy 5038f3cdb6 Ajout de Pervasives.ignore. List.remove -> List.remove_ass*
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2304 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-02-24 15:21:50 +00:00
Xavier Leroy 5980951342 Optimisation des decalages, suite
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2261 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-02-01 09:28:52 +00:00
Xavier Leroy 07f623dc28 Meilleur tagging/untagging pour les decalages
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2257 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-01-29 08:50:10 +00:00
Xavier Leroy 36b07ae020 Preallocation des fermetures pour les fonctions closes
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2249 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-01-27 10:52:33 +00:00
Xavier Leroy 0e6d40d981 Support pour le Dynlink natif de Fabrice Le Fessant
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2184 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-11-20 15:35:04 +00:00
Xavier Leroy 6c220cd9c1 Optimiser x + 0
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2164 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-11-11 09:38:40 +00:00
Jérôme Vouillon 87b17301f4 Nouvelle syntaxe des classes
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1997 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-06-24 19:22:26 +00:00
Xavier Leroy 019ea317d1 Simplification compilation du let rec de valeurs. Meilleure compilation des boucles for.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1892 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-04-06 09:07:57 +00:00
Xavier Leroy 735af8a7e8 Code genere un poil plus efficace pour les decalages
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1721 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-10-15 09:20:44 +00:00
Xavier Leroy 23686e5320 Quelques cas manquants dans la compilation du letrec de valeurs
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1688 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-08-22 08:53:12 +00:00
Xavier Leroy 4029d102d8 Bug de GC dans le let rec de valeurs: il ne faut pas ecraser l'en-tete
du bloc par celui du nouveau bloc.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1654 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-07-23 14:38:14 +00:00
Xavier Leroy b149e67a88 Nouveau module Marshal dans stdlib
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1633 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-07-02 18:16:15 +00:00
Damien Doligez 03ec746bf1 deTABisation
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1563 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-05-19 15:42:21 +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