Commit Graph

198 Commits (4b86eee145dde92965b1c0c27f721ba972dddd4d)

Author SHA1 Message Date
Xavier Leroy 997d43903b make depend rectifie.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@100 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-13 09:01:23 +00:00
Xavier Leroy 774ee4e145 cmmgen: compilation des decalages a droite.
selection: merge des resultats des branches d'un switch.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@99 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-13 09:00:54 +00:00
Xavier Leroy 736e736a4a MAJ.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@98 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-13 08:59:32 +00:00
Xavier Leroy a14b23fd2d Bidouillage d'un commentaire pour que camldep ne produise pas de
dependance circulaire.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@97 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-12 15:32:54 +00:00
Xavier Leroy 2c4565e939 Deplacement du module meta.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@96 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-12 15:32:29 +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 02a11f275f Deplacement de utils/meta vers bytecomp/meta pour ne pas gener le
compilo natif.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@94 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-12 15:30:16 +00:00
Xavier Leroy bf380e0b18 Modif des actions: elles prennent maintenant l'environnement de
parsing en argument et le repassent a peek_val. Ca donne du code plus
compact pour le compilo natif.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@93 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-12 14:29:52 +00:00
Xavier Leroy a26c95465f Si un .mli n'a pas de .ml, ne pas faire dependre qquechose sur le .cmx.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@92 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-12 14:29:13 +00:00
Xavier Leroy a2ef5d8714 Modif des actions des parsers produits par camlyacc: elles prennent
l'env en premier argument et le repassent a peek_val (plus efficace
pour le compilateur natif).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@91 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-12 14:28:51 +00:00
Xavier Leroy 2241e743e2 Un #endif etait non strictement ANSI...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@90 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-12 14:28:09 +00:00
Xavier Leroy a60e6cc08a Makefile: utilisation de VPATH pour pouvoir employer un compilo C
different de celui du runtime bytecode.
roots.c: ajout du Mips.
alpha.asm: on emploie $25 dans raise_exception pour garder trace du raise.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@89 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-12 14:27:10 +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 f443cb76fd Ajout entrees pour le bootstrap du compilo natif.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@87 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-12 14:22:01 +00:00
Xavier Leroy f2237ca6ba Eclatement de meta.c en obj.c et meta.c
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@86 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 18:09:15 +00:00
Xavier Leroy 102e3d3c5a MAJ suite a C_CALL5.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@85 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 18:08:39 +00:00
Xavier Leroy ce85e0c456 Construction de stdlib.cmxa
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@84 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 18:08:25 +00:00
Xavier Leroy 0536e5c6eb Ajout de Asmlibrarian.
Librarian -> Bytelibrarian.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@83 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 18:07:53 +00:00
Xavier Leroy e8c57efb59 Ajout de l'instruction C_CALL5.
meta.c eclate en obj.c et meta.c.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@82 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 18:07:22 +00:00
Xavier Leroy bf3897a27a MAJ du linker et du librarian.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@81 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 18:05:47 +00:00
Xavier Leroy a68e40d65f Suppression de lexing.o.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@80 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 18:04:10 +00:00
Xavier Leroy eb0dbcb903 Ajout de asmlibrarian, MAJ de asmlink.
clambda, closure: meilleure detection des fonctions closes.
selection: correction de storechunk.
spill: spill retarde dans les conditionnelles.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@79 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 18:03:29 +00:00
Xavier Leroy 9a1b27b1a9 Ajout de asmlibrarian.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@78 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 18:02:00 +00:00
Xavier Leroy 7068ced583 Lexing.get_next_char est maintenant en ML.
Utilisation des primitives %floatofint et %intoffloat.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@77 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 08:54:13 +00:00
Xavier Leroy c56071ab56 Suppression de lexing.c (Lexing.get_next_char est maintenant en ML).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@76 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 08:53:37 +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 0053975357 Rectification de caml_bottom_of_stack dans caml_c_call.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@74 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 08:51:58 +00:00
Xavier Leroy 650284680e cmmgen: correction de Pnegfloat; modifs mineures dans l'adressage des tableaux.
proc_alpha: MAJ commentaires.
selection: les ops flottantes ne sont plus considerees comme "cheap",
pour leur laisser plus de temps pour se terminer.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@73 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-11 08:51:10 +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 fd755dcfaa Ajout du mini-GC.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@69 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-07 12:11:38 +00:00
Xavier Leroy 88c9b7656e Ne rien reloader dans les arguments des appels de fonction.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@68 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-07 12:11:24 +00:00
Xavier Leroy cd93956a7b Curryfication de Format.print_break.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@67 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-07 12:09:01 +00:00
Xavier Leroy 7d761dd6df MAJ des conventions d'appel.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@66 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-07 12:08:38 +00:00
Xavier Leroy 04bb5a15c6 Integration du mini-GC.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@65 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-07 12:07:32 +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 e2486a832c Nettoyage du bootstrap.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@63 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-07 12:04:35 +00:00
Xavier Leroy 29f209ec01 Preprocesseur pour les emetteurs de code du compilo natif.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@62 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-02 16:53:54 +00:00
Xavier Leroy b827a47052 Fichiers drivers pour le compilo natif.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@61 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-02 16:51:07 +00:00
Xavier Leroy 67624bbd53 Ajout flags et magic numbers pour le compilo natif.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@60 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-02 16:50:39 +00:00
Xavier Leroy 0c9e80f2c8 Nouvelle technique de construction du CRC pour les .cmi.
List.combine maintenant decurryfiee.
Introduction de Ident.unique_name.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@59 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-02 16:50:08 +00:00
Xavier Leroy b0987beb54 MAJ imprimeur de valeurs pour la nouvelle repr des listes.
Renommage codegen -> bytegen, linker -> bytelink.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@58 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-02 16:48:53 +00:00
Xavier Leroy 852c648c4a Introduction de dumpapprox pour imprimer les infos d'un .cmx.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@57 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-02 16:47:48 +00:00
Xavier Leroy 8b063400b1 Deplacement du parser de C-- ici.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@56 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-02 16:47:24 +00:00
Xavier Leroy ad968b20a3 pervasives: utilisation de %addfloat, etc.
list: decurryfication de combine.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@55 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-02 16:46:44 +00:00
Xavier Leroy c7aa418757 Renommage de codegen -> bytegen, linker -> bytelink.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@54 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-02 16:45:41 +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 eef01845fe Premier jet d'un runtime pour le code natif.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@52 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-02 16:42:16 +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