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
Xavier Leroy
a5af2dc1a3
Autoriser les let rec dans les let rec.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@873 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-06-11 14:58:42 +00:00
Xavier Leroy
1a252b6d1f
Verification du let rec de valeurs encore change.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@791 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-07 08:14:10 +00:00
Xavier Leroy
6cfdc1aaba
Bug dans compilation des let rec de valeurs.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@788 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-05-03 16:05:40 +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
38d0c776bf
Ajout de la primitive %absfloat (valeur absolue flottante).
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@683 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-03-07 13:45:57 +00:00
Xavier Leroy
62bfd984e3
Lfunction a plusieurs arguments. Decurryfication faite dans Translcore.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@548 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-19 10:19:12 +00:00
Xavier Leroy
26747162e8
Acces aux variables liees par un pattern-matching entierement revu.
...
Passe d'elimination des lets inutiles.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@534 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-15 10:18:29 +00:00
Xavier Leroy
7c3be71ad9
Transformation des references en variables
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@463 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-25 15:38:43 +00:00
Xavier Leroy
537219eee1
Ajout flag mutable sur Pmakeblock, qui desactive
...
l'approximation pour e.g. les references vers des fonctions.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@427 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-09 13:22:16 +00:00
Xavier Leroy
e06a12dcd6
Ajout de std_exit au link.
...
Pas de code produit par une definition de primitive.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@347 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-23 16:56:52 +00:00
Xavier Leroy
97fba0e18e
"with" -> "with type"
...
Compilation de [| ... |] avec plus de 256 elements.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@310 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-03 14:03:30 +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
e31db147dd
Nouvelle rectif de array_kind pour faire face aux abreviations non expansables.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@169 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-28 12:25:17 +00:00
Xavier Leroy
4ea5700953
Dans array_kind, ne pas planter si le type n'est pas un type tableau.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@164 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-28 12:22:33 +00:00
Xavier Leroy
b44ab158b2
Creation du module primitive.
...
Gestion speciale des tableaux de flottants et des records de flottants.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@152 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-27 17:40:34 +00:00
Xavier Leroy
8deb415b89
Changement representation des primitives.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@143 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-25 11:38:42 +00:00
Xavier Leroy
b3b26e50eb
Detection plus fine des primitives C n'allouant pas.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@137 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-24 12:45:32 +00:00
Xavier Leroy
0fed8751e2
Introduction de Pintoffloat et Pfloatofint.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@75 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 08:53:14 +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
bee1844ffe
Codage des constructeurs constants avec Const_pointer
...
Optimisation de match (a,b) with (p1,p2) ->
Renommage de codegen -> bytegen, linker -> bytelink.
emitcode: cas Kdummy 0.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@53 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-02 16:45:21 +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
e0f3c043e5
Changement representation des constructeurs constants.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@40 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-06-18 14:44:56 +00:00
Xavier Leroy
ed62086527
Renommage %array_get -> %array_unsafe_get, etc.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@29 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-06-15 08:09:12 +00:00
Xavier Leroy
e5cfbe7fd7
"let rec" de valeurs plus souple.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@21 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-06-05 13:41:20 +00:00
Xavier Leroy
ec675d2f9a
Detection des types sommes avec trop de constructeurs.
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@18 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-05-22 15:43:44 +00:00
Xavier Leroy
61bd8ace6b
Passage a la version bootstrappee (franchissement du Rubicon)
...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-05-04 10:15:53 +00:00