Commit Graph

375 Commits (d66fd147fada128f6309504bfd20a1b419632864)

Author SHA1 Message Date
Xavier Leroy 041ba787b0 Utilisation d'un automate a pile pour csllex
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@668 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-02-25 17:53:56 +00:00
Xavier Leroy a8d04a2678 MAJ de caml_alloc (%g7 contient l'adresse de young_limit, pas sa valeur...)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@665 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-02-23 13:54:37 +00:00
Xavier Leroy c5483309b5 Portage Windows NT/95.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@650 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-02-21 10:49:46 +00:00
Xavier Leroy 45a5738f8c Utilisation de la table des segments de donnees structurees
produites par le generateur de code.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@646 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-02-20 10:59:35 +00:00
Xavier Leroy 076b2465f0 Nettoyage
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@640 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-02-18 14:43:40 +00:00
Xavier Leroy 1b6c720509 Nouveau systeme d'autoconfiguration.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@630 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-02-13 16:29:09 +00:00
Xavier Leroy 0a4a618a4a Prevoir le cas ou on n'a pas les signaux POSIX (e.g. NextStep)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@624 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-02-05 15:28:51 +00:00
Xavier Leroy a66bca5c98 callback posait son trap handler de maniere incorrecte.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@621 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-02-02 13:26:56 +00:00
Xavier Leroy 9810128491 fail.c: remettre le sigmask a zero avant de faire mlraise
*.asm: sauver le trap pointer dans caml_call_gc, au cas ou un signal
handler leve une exception.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@616 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-02-01 15:02:04 +00:00
Xavier Leroy c8ea6d04fd callback: bug dans l'interception des exceptions corrige.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@596 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-01-07 16:58:44 +00:00
Xavier Leroy 9c85a54888 Portage PowerPC
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@595 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-01-06 18:56:39 +00:00
Xavier Leroy 1d5db38f5f Suppression de code inutile et bugge pour Solaris
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@593 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1996-01-05 10:47:55 +00:00
Xavier Leroy 010ff8d99a Utiliser young_limit meme dans les allocations faites depuis C
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@577 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-22 17:49:35 +00:00
Xavier Leroy a0104a1a13 Implementation de urge_major_gc.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@576 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-22 16:48:37 +00:00
Xavier Leroy 1f158d3492 Ajout callback et signaux pour HPPA
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@573 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-22 14:55:29 +00:00
Xavier Leroy f06a911238 Quand callback intercepte une exception, restaurer
caml_last_return_address et caml_bottom_of_stack.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@569 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-22 09:40:50 +00:00
Xavier Leroy f6d1897410 Signaux, suite
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@568 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-21 14:21:11 +00:00
Xavier Leroy 857645d3de Signaux, fin.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@567 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-21 13:43:40 +00:00
Xavier Leroy 6a895e7c85 Signaux pour le Sparc.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@565 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-21 13:19:42 +00:00
Xavier Leroy 67f1be4ea1 Signaux, suite
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@564 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-21 12:29:49 +00:00
Xavier Leroy 0ad6877907 Signaux: premier jet
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@563 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-21 11:01:45 +00:00
Xavier Leroy e49ed7cea8 Callbacks pour le Mips.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@561 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-20 15:20:00 +00:00
Xavier Leroy 63ee36fc48 Implementation de callback.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@559 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-20 13:27:16 +00:00
Xavier Leroy 67bfa84a18 Revu la propagation des exceptions a travers le callback.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@558 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-20 10:48:10 +00:00
Xavier Leroy 4fabf7b6b6 Ajout de l'include stack.h.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@557 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-20 10:41:22 +00:00
Xavier Leroy b24b1296ee fail.c: revu le nettoyage des racines locales C.
roots.c: utiliser le nouvel include stack.h
alpha.asm: revu la propagation des exceptions a travers un callback.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@556 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-20 10:40:34 +00:00
Xavier Leroy 4900625475 Nettoyage du code de callback
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@554 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-19 16:08:03 +00:00
Xavier Leroy b8e27fec6c roots: parametrer davantage l'acces a la structure callback_link
utiliser frame_size < 0 plutot que num_roots < 0 comme indication,
       sinon le passage d'un frame au suivant est possiblement bugge.
sparc: ajout du code de callback C -> Caml


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@553 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-19 16:00:40 +00:00
Xavier Leroy 30a3062e99 Implementation des callbacks C -> ML.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@551 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-19 15:09:33 +00:00
Xavier Leroy c4eee32bcd Laisser le FPU dans l'etat initial. Le bit IM a zero fait trapper sur debordement de pile (bon), mais aussi sur 0 / 0 (mauvais).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@528 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-10 17:03:02 +00:00
Xavier Leroy 024386fa6f Ajout initialisation du hard flottant
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@525 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-10 15:53:00 +00:00
Xavier Leroy b9ad7d8946 Plus que 4 registres flottants a nettoyer. caml_c_call_noalloc supprimee car expansee en ligne maintenant
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@520 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-10 09:33:09 +00:00
Xavier Leroy 04398ed8f4 Fin modif detection acces hors bornes
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@510 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-05 13:32:15 +00:00
Xavier Leroy c51423ce73 fail.c: remettre les racines locales a zero avant de faire raise.
autres: modif du traitement des acces hors bornes.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@506 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-05 13:07:49 +00:00
Xavier Leroy 87651e58b8 Callbacks pour le Mips.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@501 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-12-04 10:02:14 +00:00
Xavier Leroy 35a7dba1b5 "Optimisation" intempestive dans caml_call_gc, qui faisait planter si
un GC se declenche dans caml_alloc[123].


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@491 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-29 10:14:53 +00:00
Xavier Leroy 09fc490852 Portage HP-PA
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@467 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-26 14:38:29 +00:00
Xavier Leroy a468a7181d Utiliser FFREE au lieu de FINIT
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@462 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-25 15:37:33 +00:00
Xavier Leroy b7f5c68470 Dans les .cmo, on garde trace des primitives declarees dans le module. Du coup, cslmktop -custom se remet a marcher.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@398 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-11-05 17:32:12 +00:00
Xavier Leroy f349d56122 Support pour Linux avec binaires ELF.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@377 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-31 09:27:04 +00:00
Xavier Leroy cddab28830 Ajout de scan_hook.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@366 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-30 10:20:08 +00:00
Xavier Leroy e91113e015 Reecriture de caml_c_call pour laisser $sp inchange, de maniere a
pouvoir passer plus de 6 arguments a une fonction C (sur la pile).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@346 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-23 16:55:42 +00:00
Xavier Leroy 96759d2c52 Passage en mode flottants IEEE maintenant effectue dans floats.c
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@335 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-16 16:59:18 +00:00
Xavier Leroy 07b0ea7270 Ajout d'un FINIT avant d'appeler une fonction C, de maniere a liberer
tous les registres flottants.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@330 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-15 18:54:33 +00:00
Xavier Leroy c362c35430 MAJ makefile
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@328 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-10 12:44:52 +00:00
Xavier Leroy b63f478fe9 raise_exception rectifiee (mauvaise structure du trap frame).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@319 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-04 14:36:34 +00:00
Xavier Leroy 453a3517ad Erreur dans raise_caml_exception.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@318 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-10-04 12:38:46 +00:00
Xavier Leroy 9dca6d3b71 Modifs pour NextStep.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@291 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-09-27 10:46:25 +00:00
Xavier Leroy c4e7e377ff Ajout du code pour passer le 387 en mode IEEE sous Linux.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@287 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-09-25 14:41:28 +00:00
Xavier Leroy 749e4be66d MAJ code de sauvegarde des registres pour le GC.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@209 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-08-24 13:22:25 +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 e2b3ef318d Portage Solaris. On prevoit plusieurs systemes pour une architecture.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@181 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-08-08 12:17:31 +00:00
Xavier Leroy 009ab75bab Optimisation en espace de l'appel a caml_call_gc.
Reecriture de caml_c_call (plus rapide avec de la chance).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@176 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-30 14:27:32 +00:00
Xavier Leroy e0ec7bce57 alpha.asm: ldgp oublie dans caml_start_program.
array.c: correction de make_array dans le cas d'un tableau d'entiers.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@163 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-28 12:21:26 +00:00
Xavier Leroy 9f6a960dd5 Introduction de sparc.asm
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@161 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-28 11:42:43 +00:00
Xavier Leroy 91fb4a2162 Creation de array.c
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@159 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-27 17:47:15 +00:00
Xavier Leroy 8213d543cb Ajout de array.c specifique a la version code natif.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@151 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-27 17:39:29 +00:00
Xavier Leroy 819b9bd164 Suppression de caml_modify
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@148 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1995-07-25 13:05:03 +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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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