Commit Graph

497 Commits (9d198c1874460d3d81107f2a7c197cc873ecbd99)

Author SHA1 Message Date
Xavier Leroy 343d49401a Revu gestion des DLLs: ne pas les utiliser en mode -custom; dans les .cma et .cmxa, stocker separement les options pour linker statiquement (-cclib) et par chargement dynamique (-dllib).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3949 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-10-30 09:32:32 +00:00
Jacques Garrigue 66343c894b architectures sans librairies partagees
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3861 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-10-06 12:35:50 +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
Jacques Garrigue 79b3768de7 concatene les rpaths (necessaire pour D/Unix 4.0)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3759 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-09-13 06:16:31 +00:00
Xavier Leroy 32bf02bd7f Remplacement de la matrice de bits pleine par une matrice creuse a base de hachage, devrait mieux tenir le choc sur les grosses fonctions
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3756 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-09-11 15:30:38 +00:00
Xavier Leroy e11cb7a39b Decoupage de Dll en Dllpath + Dll, facilite la construction de ocamlc.opt et ocamlopt.opt
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3681 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-08-30 09:02:55 +00:00
Xavier Leroy ddd99c7e5d Chargement dynamique de primitives C
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3677 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-08-28 14:47:48 +00:00
Xavier Leroy 667846e97e Work around a bug in the Tru64 5.1 assembler (divq with immediate arguments)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3673 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-08-28 08:44:20 +00:00
Xavier Leroy fd0cfdce5f Dans select_addressing, reconnaitre aussi les Caddi (produits par Cmmgen pour les acces aux chaines)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3593 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-07-24 08:01:25 +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
Xavier Leroy c16439d286 Suite revision immediats entiers (PR#327,#328)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3482 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-04-02 08:14:51 +00:00
Xavier Leroy 0ae4bc9821 Revu gestion des immediats entiers (PR#327,#328) -- non teste
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3480 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-03-30 12:22:32 +00:00
Xavier Leroy b0b5847fe0 PR#282: les -ccopt de l'utilisateur doivent etre passes en premier au compilateur C
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3428 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-02-20 09:40:52 +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 9b3fe24698 Orthographe: failthrough -> fallthrough
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3381 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-02-05 08:49:10 +00:00
Xavier Leroy 8012570164 Typo dans commentaire
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3380 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-02-05 08:48:44 +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 d95c341c1f Bug de capture de nom dans l'inlining (sur les parametres de la fonction inlinee!)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3378 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-02-05 08:46:34 +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 a79f7df4f8 MAJ pour les bigarrays
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3371 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-01-14 18:02:03 +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
Damien Doligez bf5cdff645 pas de curses en natif
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3318 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-10-27 15:18:24 +00:00
Xavier Leroy cbc5d92988 Meilleur traitement des fonctions tail rec avec des arguments en pile
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3307 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-10-10 12:39:16 +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
Xavier Leroy d89cd56af2 1- Ajout d'alpha-conversion dans substitute pour eviter les captures de variables accidentelles entre le corps d'une fonction inlinee provenant d'un autre module et un Ident.create ulterieur.
2- Desactiver l'optimisation des fonctions recursives closes lorsque la profondeur d'emboitement des fonctions devient trop importante (sinon: comportement exponentiel en la profondeur)


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3291 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-09-01 13:27:11 +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 fd8846fecd Portage Cygwin
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3270 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-08-10 09:58:08 +00:00
Xavier Leroy f7c20e30ec Fusionner Imove/Ispill/Ireload; typos; erreur dans la multiplication par 0 (...)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3244 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-07-21 08:07:46 +00:00
Xavier Leroy 07b74ffb67 Suite portage IA64
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3235 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-07-16 02:57:31 +00:00
Xavier Leroy fac3cd5fe0 Erreur dans Istoreincr
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3232 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-07-07 17:20:21 +00:00
Xavier Leroy b84fec0161 Debug du scheduler
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3231 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-07-07 17:19:57 +00:00
Xavier Leroy b00caa1790 Suite portage IA64
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3228 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-07-07 14:09:06 +00:00
Xavier Leroy b982c6a6f7 Suite experience scheduling post emission
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3226 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-07-06 20:56:16 +00:00
Xavier Leroy 440f78442b Essai de scheduling apres emission -- incomplet!
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3225 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-07-06 19:29:41 +00:00
Xavier Leroy 5b77735593 Suppression des loads et stores avec postincrement (probleme potentiel avec as -xauto)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3224 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-07-01 11:46:20 +00:00
Xavier Leroy 176441f93b Suite portage IA64
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3222 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-06-30 16:37:42 +00:00
Xavier Leroy 018e774091 Premier jet du portage IA64
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3219 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-06-29 11:46:14 +00:00
Xavier Leroy 68b5b9b5b5 Revu emit_stores pour pouvoir le redefinir pour certains processeurs
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3217 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-06-29 11:44:36 +00:00
Xavier Leroy 7cf43583e4 Determination automatique du premier numero de register libre
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3216 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-06-29 11:44:06 +00:00
Xavier Leroy eca79e519a Erreur de formattage
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3215 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-06-29 11:43:46 +00:00
Xavier Leroy 18fd4e7ab8 Rectification generateur HPPA pour supprimer warning de compatibilite (PR#125)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3189 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-06-05 12:32:11 +00:00
Xavier Leroy f6fac01592 Distinction code/data pour nativeint_ops, etc
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3131 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-04-21 13:33:51 +00:00
Xavier Leroy 9bacf41bfa Eradication de Formatmsg
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3126 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-04-21 11:55:31 +00:00
Pierre Weis 9abfff060e Suppression de Formatmsg, réécriture des messages à l'aide de Format.fprintf
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3123 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-04-21 08:13:22 +00:00
Xavier Leroy af921a24ae Mettre automatiquement une option -L pour chaque repertoire donne par -I
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3093 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-04-16 14:36:00 +00:00
Xavier Leroy 4143a8675a Traiter correctement raise lorsqu'il apparait sous un operateur strict (e.g. 1 + raise E, cf. PR#79)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3074 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-04-13 12:17:26 +00:00
Xavier Leroy e9d9a9779c Meilleur message d'erreur 'No implementations provided'
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3057 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-04-10 15:01:30 +00:00
Xavier Leroy d2d789e8a8 MAJ load/store revus
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3047 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-04-06 14:19:46 +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 8faa469c48 Ident passe a Format
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2957 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-03-15 02:09:27 +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 6adae769af Exiger gas (GNU as) comme assembleur
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2939 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-03-10 15:07:20 +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 c7b7c24381 Nouveau format de .cma et .cmxa, se rappelle des -cclib et -ccopt necessaires pour le link final
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2930 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-03-09 09:12:28 +00:00
Damien Doligez 836c41cd32 Fix PR#48 (plus general)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2905 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-03-06 14:52:19 +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
Damien Doligez 624e44413d fix PR#48 (provisoire?)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2899 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-03-03 19:22:26 +00:00
Xavier Leroy 1fc102caa7 Adaptation pour BSD
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2891 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-29 16:15:59 +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 616fae49f9 Normaliser les constantes entieres 32 bits
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2836 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-21 18:12:52 +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
Pierre Weis cab4731dcc print_string -> printf
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2800 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-10 08:48:25 +00:00
Xavier Leroy 6d83326e52 MAJ pour HPUX 10.
Ajout load/store int32 et float32


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2799 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-10 08:43:33 +00:00
Xavier Leroy 68cfc93add Catch-all inutile dans un filtrage
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2798 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-10 08:43:10 +00:00
Pierre Weis 39553e9972 Révision de l'impression à l'aide de format: utilisation de printf
pour condenser les programmes et aussi préparer une future (éventuelle)
internationalisation d'Objective Caml.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2796 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-08 20:00:06 +00:00
Xavier Leroy 600656aa48 Ajout load/store int32 et float32
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2792 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-07 10:23:22 +00:00
Xavier Leroy 1442bc4dd8 23 registres entiers, pas 24
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2791 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-07 10:23:10 +00:00
Xavier Leroy bd87e3921e Deprecated the M68k port
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2787 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-04 15:34:43 +00:00
Xavier Leroy 3e5b4ba1ca Typo dans Cint32
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2786 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-04 15:28:56 +00:00
Xavier Leroy ba056d72a4 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@2785 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-04 15:08:29 +00:00
Xavier Leroy d9fe400f4e Oubli: Cint32
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2784 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-04 15:08:23 +00:00
Xavier Leroy a0b43b6a5a Deux typos (Iload, Cint32)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2783 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-04 15:05:10 +00:00
Xavier Leroy 470d4a8dde 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@2782 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-04 14:31:38 +00:00
Xavier Leroy dca961a658 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@2781 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-04 13:47:25 +00:00
Xavier Leroy 81bfeaae69 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@2780 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-02-04 13:31:04 +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 469ec90391 detabisation
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2736 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-01-07 15:50:42 +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
Damien Doligez 77551fc8d6 petit glitch sur l'addition d'une constante (XL)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2731 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-01-05 13:07:18 +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
Jacques Garrigue 71d0a1a181 dead files
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2654 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-11-30 17:09:30 +00:00
Jacques Garrigue 296fc05470 Merge olabl branch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2651 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-11-30 16:07:38 +00:00
Damien Doligez ddc7d63689 tabs -> spaces
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2639 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-11-29 19:16:30 +00:00
Xavier Leroy e0e7b3015a Rectification constantes flottantes
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2585 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-11-22 18:24:27 +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
Damien Doligez 511c2f58c4 bug sur -nopervasives
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2496 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-11-08 18:50:36 +00:00
Xavier Leroy a048d42b10 Ajout du module Formatmsg pour rediriger les messages du systeme vers stdout ou stderr suivant le contexte
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2486 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-11-08 17:06:33 +00:00
Damien Doligez 05f4452887 option -nopervasives pour le link
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2475 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-11-08 15:25:41 +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 d898f2a920 Ne pas simplifier les applications de primitives si les arguments ne sont pas purs (cf. bug report de Andrew Kay)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2434 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-10-14 17:07:59 +00:00
Xavier Leroy d4d7744f79 Oubli de open Misc
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2432 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-10-14 15:23:53 +00:00
Xavier Leroy 26d4b308cf Ajout de bsd_elf
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2415 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-10-14 13:35:23 +00:00
Xavier Leroy f9a592b8e9 Detecter le cas ou la matrice d'interference explose
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2414 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-10-14 13:34:37 +00:00
Xavier Leroy 68829a504b Portage BeOS/Intel x86
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2376 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-05-18 18:46:17 +00:00
Xavier Leroy 52bdeb2bdf Prise en compte du traitement addimm 2 addresses -> lea
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2375 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-05-15 17:48:10 +00:00
Xavier Leroy 57d1b406ce Ajout d'une passe supplementaire pour combiner les allocations qui apparaissent dans le meme bloc de base.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2361 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-05-15 15:04:46 +00:00
Xavier Leroy 94b8cdbb74 Emettre un lea pour x <- y + cst quand x et y sont dans des registres differents (utile pour la nouvelle passe Comballoc)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2360 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-05-15 15:04:08 +00:00
Xavier Leroy 75d7f7d0aa Support *BSD
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2359 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-05-15 15:03:11 +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 ad5f095034 Revu compilation du Lswitch pour contourner un bug de l'assembleur (pas de .gpword sur un label defini en arriere)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2349 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-03-10 12:47:57 +00:00
Xavier Leroy 03f01569a7 Bien traiter Ialloc de plus de 1024 octets
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2338 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-03-04 15:03:28 +00:00
Xavier Leroy 2de70e9427 Dans Ialloc, traiter le cas ou l'offset par-rapport a l'allocation groupee n'est pas un immediat
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2331 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-03-04 11:09:45 +00:00
Xavier Leroy 294aff94cf Lors de l'emission de constantes, faire attention aux symboles de code / de donnees (suite)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2330 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-03-04 10:55:46 +00:00
Xavier Leroy 6ad4dff1f8 Lors de l'emission de constantes, faire attention aux symboles de code / de donnees
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2329 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-03-04 10:49:25 +00:00
Xavier Leroy 2cdc58017c Elimination des arguments inutilises lors de l'inlining (Mark Hayden)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2328 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-03-04 09:49:06 +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 05b366f105 Istore_int et Ipush_int prennent un Nativeint.t au lieu d'un int
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2275 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-02-12 16:27:39 +00:00
Xavier Leroy dfff116874 Fusionner les allocations qui sont dans le meme basic block
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2269 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-02-04 15:29:34 +00:00
Xavier Leroy 4189443be3 Nouveau schema de compilation des definitions d'une unite de compilation en ocamlopt
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2266 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-02-04 10:31:16 +00:00
Xavier Leroy 2f274392aa Istore_int, Ipush_int: prennent des nativeints en argument
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2265 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-02-04 10:30:31 +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 3e53f531c9 Propagation des constantes pour les booleens
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2258 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-01-29 08:50:24 +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 e69a4030c0 Emettre symbol - N plutot que symbol + -N
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2256 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-01-28 15:39:09 +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 83cd7cac3d Optimisation de la selection d'instruction (les checkbounds peuvent apparaitre dans des expressions simples, c'est bon pour le flottant Intel)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2224 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-12-03 17:28:53 +00:00
Xavier Leroy 08a46a325c Bug de spilling lie aux exceptions levees par Icheckbound (signale par Fabrice Le Fessant)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2220 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-12-03 09:51:35 +00:00
Xavier Leroy 7f9ee6a995 MAJ portage Win32
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2218 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-12-02 14:39:27 +00:00
Xavier Leroy 16bc49829e Implementation de -cclib -lfoo pour Windows
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2214 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-12-02 10:58:22 +00:00
Xavier Leroy 80a18abcec fmovd -> 2 fmovs (car l'assembleur GNU ne comprend pas fmovd)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2197 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-11-26 09:34:46 +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 b71badac85 Mips/Irix: passage en mode -n32. Mips/Ultrix: suppression
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2183 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-11-18 18:10:53 +00:00
Pierre Weis 29ceedb180 Warning de la séquence
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2177 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-11-12 16:53:20 +00:00
Xavier Leroy 939d9b30a9 En ocamlopt, les acces hors bornes levent Invalid_argument au lieu de planter le programme. Itou pour les fonctions C qui appellent invalid_argument. Teste sur Intel, a tester sur les autres
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2165 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-11-11 15:35:48 +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
Xavier Leroy eed4e592d0 Bugs dans la propagation des constantes entieres
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2163 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-11-11 09:38:22 +00:00
Xavier Leroy 10231cade2 Ajout de l'option -cc
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2161 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-11-06 15:39:43 +00:00
Xavier Leroy 59cb8750d2 Simplification des modes d'adressage: suppression du mode Iindexed2, inefficace et genant le bon scheduling
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2133 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-10-20 15:27:27 +00:00
Xavier Leroy fc77f415d8 Scheduler les checkbound avant les load correspondants
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2123 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-10-19 17:21:45 +00:00
Xavier Leroy 66ae9423a7 Portage ARM
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2120 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-10-15 16:10:53 +00:00
Xavier Leroy fca1be1fdd Suite du portage ARM
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2119 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-10-14 17:08:57 +00:00
Xavier Leroy 57c704d739 Portage ARM -- premier jet
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2113 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-10-09 14:43:30 +00:00
Xavier Leroy fefba26fcf Gerer le correctement sous Linux aussi, car ld 2.8.1 traite les multiples correctement
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2053 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-08-14 16:04:15 +00:00
Xavier Leroy fe0a2ee892 Retour a la strategie standard de gestion du
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2048 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-08-13 09:02:43 +00:00
Xavier Leroy 94dd3b1472 Exception Use_default inutile
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2037 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-08-08 10:21:02 +00:00
Xavier Leroy 057d9f6aa4 Debug de l'option -p
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2027 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-08-06 14:25:44 +00:00
Xavier Leroy 49521cb928 Ajout du profiling par gprof (ocamlopt -p)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2025 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-08-06 13:27:38 +00:00
Jérôme Vouillon 1e375a74dd Nouvelle syntaxe des classes
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1999 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-06-25 13:14:07 +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 5ac8854085 Eviter d'emettre des addi 1, 1, 0 en cas de fonction qui n'utilise pas la pile
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1988 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-06-22 12:43:04 +00:00
Xavier Leroy a859063f3b Utiliser movz[bw]l systematiquement, ne pas essayer de faire un load partiel dans un registre mis a zero. C'est moins bon pour le Pentium mais meilleur pour le Pentium Pro
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1987 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-06-22 12:40:04 +00:00
Xavier Leroy bae3ad8140 Retour au schema classique de compilation de Lswitch (pour atom, pixie, et outils semblables)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1986 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-06-22 12:38:57 +00:00