Commit Graph

77 Commits (8cd61ac05567f1a42cf13b18c77a0b8135bb8ae1)

Author SHA1 Message Date
Luc Maranget eb7578b8db optimsation pm a donf
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3427 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-02-19 20:27:52 +00:00
Xavier Leroy f2a7fdbcd3 Ajout de l'instruction RERAISE
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3421 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2001-02-19 12:28:04 +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 b80c77b025 fix -noassert pour que le typage des assertions soit toujours fait
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3353 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-12-04 15:37:05 +00:00
Luc Maranget ab97fd0dcc or-pat avec variables et compil du switch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3304 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-10-02 14:18:05 +00:00
Jacques Garrigue e477ccd225 relaxation de la semantique des effets de bords sur les parametres
optionels, pour permettre une compilation plus efficace.
modifie' translcore, typedtree, typecore, typeclass


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@3293 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-09-04 08:49:32 +00:00
Pierre Weis b96208b7a2 Revu les impressions du compilateur
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2908 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-03-06 22:12:09 +00:00
Xavier Leroy ee2c3d5bc6 Nouveau format extensible d'executables bytecode
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2903 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-03-05 19:18:50 +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 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
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
Jacques Garrigue ea77b3d485 Variant compilation bugs: simple mistakes in matching.ml, and incorrect use of Const_pointer for 31-bit integers in translcore.ml
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2747 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-01-07 17:21:29 +00:00
Damien Doligez ec1c205be6 detabisation
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2737 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2000-01-07 15:56:27 +00:00
Xavier Leroy 555c7f8022 Ajout de la primitive %obj_is_int
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2686 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-12-12 16:29:31 +00:00
Jacques Garrigue c7c92e6a06 Nettoyage de l'optimisation des valeurs par defaut dans translcore.ml. Ajout de Default a Asttypes.rec_flag.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2670 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-12-06 17:05:19 +00:00
Jacques Garrigue e6d3ba276e bug in pushing defaults in function definitions
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2663 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-12-01 15:56:42 +00:00
Jacques Garrigue 6dceef2ead evaluate all arguments in out-of-order partial applications
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2662 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-12-01 14:07:38 +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
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 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
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 0ecbd9a5ab Verification plus stricte des let rec (bug de Pascal Cuoq)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2295 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-02-19 16:28:45 +00:00
Xavier Leroy 946e79f63d Code plus compact genere pour {r with ...} quand r a beaucoup de champs qui ne sont pas redefinis
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2263 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1999-02-03 16:03:58 +00:00
Jérôme Vouillon afc341a3cd Evaluation retardee de object ... end
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2193 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-11-24 22:00:06 +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
Jérôme Vouillon 5db83b0276 Bugs de compilation des classes
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2086 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-08-31 19:41:24 +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 19d79cd6ac Meilleurs noms pour les exceptions
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1991 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-06-23 10:06:50 +00:00
Xavier Leroy 966c09366b Ajout de l'extension de records {r with lbl=expr}
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1939 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-04-27 15:17:11 +00:00
Xavier Leroy ea8fe59ea0 Adoption des memes representations que dans ocamlopt pour les tableaux de flottants et les fonctions mutuellement recursives.
Simplification de la compilation du let rec de valeurs.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1895 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-04-06 09:15:55 +00:00
Xavier Leroy 83cea541c3 Ajout de let module = <modulexpr> in <expr>
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1882 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1998-02-26 12:54:44 +00:00
Jérôme Vouillon b31ba453db Utilisation de "name_pattern" pour [try ... with ...] aussi.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1609 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-06-15 16:50:09 +00:00
Xavier Leroy 7ec8fce54c Nouveau format d'executable.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1593 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-06-13 15:48:53 +00:00
Damien Doligez 4eeb35cc67 Fix de let rec dans ocamlc -g
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1585 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-06-12 15:25:01 +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 3f1b15e439 bytelink, emitcode: nouvelle gestion des CRC des interfaces.
bytelink: Sys.command -> Ccomp.command
translcore: expanser les abreviations dans has_base_type


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1551 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-05-15 13:25:14 +00:00
Jérôme Vouillon 874f21a083 Methodes privees.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1523 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-05-11 21:48:21 +00:00
Jérôme Vouillon f267206dca Evenement apres un appel a une fonction C
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1474 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-30 19:41:54 +00:00
Jérôme Vouillon a0cfa218df Ajout de pseudo-evenements en debut de fonction (on ne s'y arrete pas,
mais on peut y mettre des point d'arret). Permet de mettre un point
d'arret au debut de n'importe quelle fonction ("break function"). Ce
point d'arret est commun a tous les cas de la fonction
Evenement avant la garde bien place, et evenement apres la fleche
quand il y a une garde ([when < e -> < e'] au lieu de [< when e -> e']).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1467 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-27 20:54:05 +00:00
Jérôme Vouillon 0ddf4dab80 Modification de Ctype.correct_levels
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1456 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-24 20:13:16 +00:00
Jérôme Vouillon 88a494b9e8 Ctype.correct_level devient Ctype.correct_levels
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1399 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-14 15:23:05 +00:00
Jérôme Vouillon f9e4b2d441 Revision de la manipulation des types.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1392 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-13 21:19:35 +00:00
Jérôme Vouillon b54a009909 Ctype.expand_root renomme en Ctype.expand_head
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1335 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-03-07 22:43:27 +00:00
Xavier Leroy 65b0dfc16c Corrections de bugs dans la gestion des evenements de debug.
Conserver l'optimisation tailcall et push-acc meme en presence
d'evenements de debug.
Stockage plus efficace des infos de debug dans les .cmo.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1279 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1997-02-19 16:08:05 +00:00
Xavier Leroy 3b92524aa9 Ajout du support pour le debugger
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1211 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-11-29 18:36:42 +00:00
Xavier Leroy 567e31cd7f Detection des fonctions tuplifiees.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1085 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-22 13:36:59 +00:00
Xavier Leroy 32f11c1c99 Expanser les abreviations de maniere plus paresseuses pour faire la
strength reduction basee sur les types.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1071 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-09 13:38:50 +00:00
Xavier Leroy 4c5a2550b9 Correction bug dans Translcore.array_kind
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1038 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-10-01 09:46:17 +00:00
Xavier Leroy 8d069d7e00 Ajout du module Types et d'infos d'environnement dans Typedtree.
Translcore: meilleur tests de types pour determiner le kind d'un tableau.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1004 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-09-23 11:30:27 +00:00
Xavier Leroy 42386e77b6 Ne pas optimiser opt = Constr_constant si le constructeur est une exception.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@904 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-06-25 09:52:46 +00:00