ftp.nice.ch/pub/next/developer/languages/modula/SRC-m3.3.N.b.tar.gz#/usr/local/lib/m3/pkg/libm3/src/runtime/common/RTBuiltin.c

This is RTBuiltin.c in view mode; [Download] [Up]

/* Copyright (C) 1992, Digital Equipment Corporation                         */
/* All rights reserved.                                                      */
/* See the file COPYRIGHT for a full description.                            */

/* Last modified on Thu Dec  9 15:19:39 PST 1993 by kalsow                   */
/*      modified on Mon Apr 26 14:29:15 PDT 1993 by muller                   */

/*----------- types from RT0, for now ... -----------------*/

/** #include "M3Runtime.h" **/
#define _ADDRESS char*
typedef void (*_PROC)();
#define _LOCAL_PROC static
#define _IMPORT extern
#define _PRIVATE static
#define _EXPORT
#define _MAPPROC_MASK long

typedef struct _type {
    struct _type *next;
    long           selfID;
  } _TYPE_LINK;

typedef struct {
    _PROC  proc;
    char*  name;
    long    type_id;
  } _PROC_INFO;

typedef struct {
    char*        file;
    _TYPE_LINK  *type_cells;
    _PROC_INFO  *proc_info;
    _ADDRESS     try_scopes;
    _ADDRESS     var_map;
    _ADDRESS     gc_map;
    _PROC        init;
  } _MODULE_INFO;

/*------------------------------------------------------------------------*/
/* the "builtin" interface record */

struct _IR_ {
  _MODULE_INFO module_info;
  _PROC  abs;
  _PROC  adr;
  _PROC  adrsize;
  _PROC  bitsize;
  _PROC  bytesize;
  _PROC  ceiling;
  _PROC  dec;
  _PROC  dispose;
  _PROC  first;
  _PROC  float_;
  _PROC  floor;
  _PROC  inc;
  _PROC  istype;
  _PROC  last;
  _PROC  loophole;
  _PROC  max;
  _PROC  min;
  _PROC  narrow;
  _PROC  new;
  _PROC  number;
  _PROC  ord;
  _PROC  round;
  _PROC  subarray;
  _PROC  trunc;
  _PROC  typecode;
  _PROC  val;
  _TYPE_LINK  mutex;
  _TYPE_LINK  text;
  _TYPE_LINK  untraced_root;
  _TYPE_LINK  root;
  _TYPE_LINK  refany;
  _TYPE_LINK  address;
  _TYPE_LINK  null;
};

/*------------------------------------------------------------------------*/

#define SELF M3__I_M3_BUILTIN
_EXPORT struct _IR_ SELF = {

  /*--------- module_info -----------------*/
  {
  "M3_BUILTIN.ic",
  &SELF.mutex,  /* type_cells */
  0,  /* proc_info */
  0,  /* try_scopes */
  0,  /* var_map */
  0,  /* gc_map */
  0   /* init */
  },

  /*--------- builtin operations -----------------*/
  0, /* abs */
  0, /* adr */
  0, /* adrsize */
  0, /* bitsize */
  0, /* bytesize */
  0, /* ceiling */
  0, /* dec */
  0, /* dispose */
  0, /* first */
  0, /* float_ */
  0, /* floor */
  0, /* inc */
  0, /* istype */
  0, /* last */
  0, /* loophole */
  0, /* max */
  0, /* min */
  0, /* narrow */
  0, /* new */
  0, /* number */
  0, /* ord */
  0, /* round */
  0, /* subarray */
  0, /* trunc */
  0, /* typecode */
  0, /* val */

  /*--------- mutex -----------------*/
  { &SELF.text, 356643957 /* 0x1541f475 */},

  /*--------- text -----------------*/
  { &SELF.untraced_root, 1358456180 /* 0x50f86574 */},

  /*--------- untraced root -----------------*/
  { &SELF.root, -1987139703 /* 0x898ea789 */},

  /*--------- root -----------------*/
  { &SELF.refany, -1651526519 /* 0x9d8fb489 */},

  /*--------- refany -----------------*/
  { &SELF.address, 471614950 /* 0x1c1c45e6 */},

  /*--------- address -----------------*/
  { &SELF.null, 138420323 /* 0x8402063 */},

  /*--------- null -----------------*/
  { 0, 1223456110 /* 0x48ec756e */},

};







These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.