Commit Graph

5535 Commits (dbf40e0b61af6f34d4a2736be1f0562ee5e8a52f)

Author SHA1 Message Date
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 a7c7c31fbe fail: invalid_arg fait fatal_error.
signals: inclure fail.h.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@136 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-24 12:44:52 +00:00
Xavier Leroy 428f9d2303 emit_i386: MAJ et tests.
emit_alpha: utiliser subq pour les comparaisons + branchements.
linearize: suprression moves vides, discard_dead_code ds Lraise.
selection: try...with en tail position.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@135 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-24 12:44:17 +00:00
Xavier Leroy 9438561275 Faute de frappe.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@134 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-24 12:42:42 +00:00
Xavier Leroy 18663057ba Nettoyage des Makefiles
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@133 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-21 09:03:58 +00:00
Xavier Leroy 2f702357a2 MAJ.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@132 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-20 10:06:48 +00:00
Xavier Leroy 6ee1e295c0 MAJ portage Sparc
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@131 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-20 08:30:16 +00:00
Xavier Leroy 907632029a Initial revision
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@130 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-20 08:02:06 +00:00
Xavier Leroy 4322e42e4d Changement signification option -S.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@129 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-20 07:52:12 +00:00
Xavier Leroy 0624670e7b config.h: nettoyage
mlvalues.h: utiliser _end au lieu de end sur l'alpha.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@128 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-20 07:51:48 +00:00
Xavier Leroy 15cad20a82 asmgen: changement signification option -S.
proc_sparc: appel du scheduler en place.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@127 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-20 07:51:11 +00:00
Xavier Leroy 08e119d949 Orthographe de NATIVECCCOMPOPTS.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@126 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-20 07:50:43 +00:00
Xavier Leroy a1ff6727e7 Integration des tests bytecode / code natif
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@125 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-19 19:38:48 +00:00
Xavier Leroy 9ea1269891 linearize: MAJ commentaires.
emit_mips: utilisation de lwc1 / stc1


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@124 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-19 09:56:51 +00:00
Xavier Leroy aa76a4e56c Ajout ASFLAGS.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@123 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-18 17:41:36 +00:00
Xavier Leroy 2ee785a0c7 MAJ portage Sparc.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@122 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-18 17:40:23 +00:00
Xavier Leroy 94883083ab MAJ portage Sparc (a tester).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@121 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-18 13:09:02 +00:00
Xavier Leroy 969f84e3f3 fail.c: declaration des exceptions predefinies.
Makefile: suppression de VPATH.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@120 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-18 09:45:16 +00:00
Xavier Leroy 53da79c54e Ajout $(COMPFLAGS) pour la compilation de pervasives.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@119 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-18 08:43:50 +00:00
Xavier Leroy 02d8ae6d60 Separation des compilos C pour le bytecode / pour le compilo natif.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@118 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-18 08:42:01 +00:00
Xavier Leroy 5b5cb38a31 MAJ suite a la separation de compilos C pour le bytecode / pour le
compilo natif.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@117 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-18 08:41:46 +00:00
Xavier Leroy ef5d1c3fb2 MAJ du Makefile suite a la separation de compilos C pour le bytecode /
pour le compilo natif.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@116 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-18 08:41:30 +00:00
Xavier Leroy a7d2358319 Production des exceptions predefinies par le linker natif.
MAJ du Makefile suite a la separation de compilos C pour le bytecode /
pour le compilo natif.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@115 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-18 08:41:12 +00:00
Xavier Leroy fafb9d5084 Production des exceptions predefinies par le linker natif.
Masquage du bit "frame scanned" sur l'adresse de retour quand on fait
un tailcall.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@114 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-18 08:40:44 +00:00
Xavier Leroy 7cb817b8dd Separation compilo C pour le bytecode / pour le compilo natif.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@113 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-18 08:39:40 +00:00
Xavier Leroy 0a0580379a MAJ conventions de caml_c_call.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@112 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-17 16:11:32 +00:00
Xavier Leroy 3e935fb501 Nettoyages dans l'espoir d'aller un poil plus vite.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@111 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-17 16:11:08 +00:00
Xavier Leroy 7005c1670d Suppression d'une indirection sur les globaux.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@110 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-17 16:10:45 +00:00
Xavier Leroy b826ff65bc Ajout des tests Ieventest et Ioddtest dans Mach.operation
Meilleure traduction lambda -> C-- pour les definitions de structures
toplevel.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@109 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-17 16:10:15 +00:00
Xavier Leroy efa7a2fe70 Initial revision
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@108 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-17 15:58:46 +00:00
Xavier Leroy 71631bdaa7 Ajout option -compact.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@107 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-13 17:17:20 +00:00
Xavier Leroy 8137de9583 Pour le MIPS, implementation du bit "deja scanne".
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@106 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-13 17:16:52 +00:00
Xavier Leroy d0c03529e9 closure: suppression du parametre d'environnement si inutile.
cmmgen: prise en compte du flag -compact.
coloring: dissymetrisation des preferences.
interf: ne pas ajouter de preferences entre registres qui conflictent.
emit_mips: masquage du bit "deja scanne" sur les addresses de retour.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@105 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-13 17:16:20 +00:00
Xavier Leroy e59f5521a0 mips.asm: utilisation de "j" au lieu de "jal" pour lever une
exception.
Makefile: on n'utilise plus VPATH.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@104 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-13 12:52:37 +00:00
Xavier Leroy 7bb1e28d35 Correction de l'appel a call_gc.
Utilisation de j au lieu de jal pour lever une exception. (pixie-friendly?)


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@103 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-13 12:51:46 +00:00
Xavier Leroy 4cac7cd8a6 Affichage des CRC.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@102 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-13 09:02:55 +00:00
Xavier Leroy 0c8b586da0 compare.c hash.c mlvalues.h: redefinition de Is_atom a l'aide de &end
pour que les constantes structurees produites par le compilo natif
apparaissent comme des atomes et qu'on descende dedans dans equal et
hash.
ints.c: rectification de format_int pour qu'il formatte des long, pas
des int.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@101 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-13 09:02:41 +00:00
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