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

SCM Repository

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

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

Parent Directory Parent Directory | Revision Log Revision Log

Revision 249 - (download) (as text) (annotate)
Sat Apr 17 18:57:03 1999 UTC (21 years, 3 months ago) by monnier
Original Path: sml/branches/SMLNJ/src/runtime/include/ml-globals.h
File size: 2137 byte(s)
version 110.16
/* ml-globals.h
 * COPYRIGHT (c) 1992 AT&T Bell Laboratories
 * These are global reference variables allocated in the run-time system that
 * are visible to the ML tasks.

#ifndef _ML_GLOBALS_
#define ML_GLOBALS_

#ifndef _ML_VALUES_
#include "ml-values.h"

extern ml_val_t	*CRoots[];
extern int	NumCRoots;

/* "current function" hook for profiling */
extern ml_val_t	_ProfCurrent[];
#define ProfCurrent PTR_CtoML(_ProfCurrent+1)

extern ml_val_t	_PervStruct[];		/* Pointer to the pervasive structure */
#define PervStruct PTR_CtoML(_PervStruct+1)

extern ml_val_t _MLSignalHandler[];
#define MLSignalHandler PTR_CtoML(_MLSignalHandler+1)

extern ml_val_t SysErr_id0[];
#define SysErrId PTR_CtoML(SysErr_id0+1)

extern ml_val_t RunTimeCompUnit;
#ifdef ASM_MATH
extern ml_val_t MathVec;

extern ml_val_t _Div_id0[];
#define DivId		PTR_CtoML(_Div_id0+1)

extern ml_val_t _Overflow_id0[];
#define OverflowId	PTR_CtoML(_Overflow_id0+1)

#if defined(ASM_MATH)
extern ml_val_t _Ln_id0[];
#define LnId PTR_CtoML(_Ln_id0+1)
extern ml_val_t _Sqrt_id0[];
#define SqrtId PTR_CtoML(_Sqrt_id0+1)

extern ml_val_t sigh_resume[];
extern ml_val_t *sigh_return_c;
extern ml_val_t pollh_resume[];
extern ml_val_t *pollh_return_c;
extern ml_val_t callc_v[];
extern ml_val_t handle_v[];
extern ml_val_t *return_c;

extern ml_val_t _MLPollHandler[];
#define MLPollHandler PTR_CtoML(_MLPollHandler+1)

/** polling and MP references **/
extern ml_val_t _PollFreq0[];
#define PollFreq PTR_CtoML(_PollFreq0+1)
extern ml_val_t _PollEvent0[];
#define PollEvent PTR_CtoML(_PollEvent0+1)
extern ml_val_t _ActiveProcs0[];
#define ActiveProcs PTR_CtoML(_ActiveProcs0+1)

/* Initialize the C function list */
extern void InitCFunList ();
/* Record the C symbols that are visible to SML */
extern void RecordGlobals ();
/* Initialize the ML globals that are supported by the runtime system */
extern void AllocGlobals (ml_state_t *msp);
/* Bind a C function */
extern ml_val_t BindCFun (char *moduleName, char *funName);

#ifdef SIZES_C64_ML32
/* patch the 32-bit addresses */
extern void PatchAddrs ();

#endif /* !_ML_GLOBALS_ */

ViewVC Help
Powered by ViewVC 1.0.0