Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Annotation of /sml/trunk/src/runtime/include/ml-globals.h
ViewVC logotype

Annotation of /sml/trunk/src/runtime/include/ml-globals.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 249 - (view) (download) (as text)
Original Path: sml/branches/SMLNJ/src/runtime/include/ml-globals.h

1 : monnier 249 /* ml-globals.h
2 :     *
3 :     * COPYRIGHT (c) 1992 AT&T Bell Laboratories
4 :     *
5 :     * These are global reference variables allocated in the run-time system that
6 :     * are visible to the ML tasks.
7 :     */
8 :    
9 :     #ifndef _ML_GLOBALS_
10 :     #define ML_GLOBALS_
11 :    
12 :     #ifndef _ML_VALUES_
13 :     #include "ml-values.h"
14 :     #endif
15 :    
16 :     extern ml_val_t *CRoots[];
17 :     extern int NumCRoots;
18 :    
19 :     /* "current function" hook for profiling */
20 :     extern ml_val_t _ProfCurrent[];
21 :     #define ProfCurrent PTR_CtoML(_ProfCurrent+1)
22 :    
23 :     extern ml_val_t _PervStruct[]; /* Pointer to the pervasive structure */
24 :     #define PervStruct PTR_CtoML(_PervStruct+1)
25 :    
26 :     extern ml_val_t _MLSignalHandler[];
27 :     #define MLSignalHandler PTR_CtoML(_MLSignalHandler+1)
28 :    
29 :     extern ml_val_t SysErr_id0[];
30 :     #define SysErrId PTR_CtoML(SysErr_id0+1)
31 :    
32 :     extern ml_val_t RunTimeCompUnit;
33 :     #ifdef ASM_MATH
34 :     extern ml_val_t MathVec;
35 :     #endif
36 :    
37 :     extern ml_val_t _Div_id0[];
38 :     #define DivId PTR_CtoML(_Div_id0+1)
39 :    
40 :     extern ml_val_t _Overflow_id0[];
41 :     #define OverflowId PTR_CtoML(_Overflow_id0+1)
42 :    
43 :     #if defined(ASM_MATH)
44 :     extern ml_val_t _Ln_id0[];
45 :     #define LnId PTR_CtoML(_Ln_id0+1)
46 :     extern ml_val_t _Sqrt_id0[];
47 :     #define SqrtId PTR_CtoML(_Sqrt_id0+1)
48 :     #endif
49 :    
50 :     extern ml_val_t sigh_resume[];
51 :     extern ml_val_t *sigh_return_c;
52 :     extern ml_val_t pollh_resume[];
53 :     extern ml_val_t *pollh_return_c;
54 :     extern ml_val_t callc_v[];
55 :     extern ml_val_t handle_v[];
56 :     extern ml_val_t *return_c;
57 :    
58 :     extern ml_val_t _MLPollHandler[];
59 :     #define MLPollHandler PTR_CtoML(_MLPollHandler+1)
60 :    
61 :     /** polling and MP references **/
62 :     extern ml_val_t _PollFreq0[];
63 :     #define PollFreq PTR_CtoML(_PollFreq0+1)
64 :     extern ml_val_t _PollEvent0[];
65 :     #define PollEvent PTR_CtoML(_PollEvent0+1)
66 :     extern ml_val_t _ActiveProcs0[];
67 :     #define ActiveProcs PTR_CtoML(_ActiveProcs0+1)
68 :    
69 :     /* Initialize the C function list */
70 :     extern void InitCFunList ();
71 :     /* Record the C symbols that are visible to SML */
72 :     extern void RecordGlobals ();
73 :     /* Initialize the ML globals that are supported by the runtime system */
74 :     extern void AllocGlobals (ml_state_t *msp);
75 :     /* Bind a C function */
76 :     extern ml_val_t BindCFun (char *moduleName, char *funName);
77 :    
78 :     #ifdef SIZES_C64_ML32
79 :     /* patch the 32-bit addresses */
80 :     extern void PatchAddrs ();
81 :     #endif
82 :    
83 :     #endif /* !_ML_GLOBALS_ */

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0