summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
Diffstat (limited to 'includes')
-rw-r--r--includes/ClosureMacros.h18
-rw-r--r--includes/Closures.h77
-rw-r--r--includes/Hooks.h4
-rw-r--r--includes/InfoTables.h67
-rw-r--r--includes/README1
-rw-r--r--includes/Rts.h19
-rw-r--r--includes/RtsConfig.h4
-rw-r--r--includes/RtsFlags.h170
-rw-r--r--includes/RtsTypes.h46
-rw-r--r--includes/SMP.h2
-rw-r--r--includes/SchedAPI.h9
-rw-r--r--includes/Stg.h2
-rw-r--r--includes/StgMiscClosures.h12
-rw-r--r--includes/TSO.h47
-rw-r--r--includes/TickyCounters.h13
-rw-r--r--includes/mkDerivedConstants.c9
16 files changed, 5 insertions, 495 deletions
diff --git a/includes/ClosureMacros.h b/includes/ClosureMacros.h
index cae5f13c2b..1c371b25e8 100644
--- a/includes/ClosureMacros.h
+++ b/includes/ClosureMacros.h
@@ -127,22 +127,6 @@
#define SET_STATIC_PROF_HDR(ccs)
#endif
-#ifdef GRAN
-#define SET_GRAN_HDR(c,pe) (c)->header.gran.procs = pe
-#define SET_STATIC_GRAN_HDR gran : { procs : Everywhere },
-#else
-#define SET_GRAN_HDR(c,pe)
-#define SET_STATIC_GRAN_HDR
-#endif
-
-#ifdef PAR
-#define SET_PAR_HDR(c,stuff)
-#define SET_STATIC_PAR_HDR(stuff)
-#else
-#define SET_PAR_HDR(c,stuff)
-#define SET_STATIC_PAR_HDR(stuff)
-#endif
-
#ifdef TICKY_TICKY
#define SET_TICKY_HDR(c,stuff) /* old: (c)->header.ticky.updated = stuff */
#define SET_STATIC_TICKY_HDR(stuff) /* old: ticky : { updated : stuff } */
@@ -154,8 +138,6 @@
#define SET_HDR(c,_info,ccs) \
{ \
(c)->header.info = _info; \
- SET_GRAN_HDR((StgClosure *)(c),ThisPE); \
- SET_PAR_HDR((StgClosure *)(c),LOCAL_GA); \
SET_PROF_HDR((StgClosure *)(c),ccs); \
SET_TICKY_HDR((StgClosure *)(c),0); \
}
diff --git a/includes/Closures.h b/includes/Closures.h
index 15955fdcba..ef5fa4e807 100644
--- a/includes/Closures.h
+++ b/includes/Closures.h
@@ -27,14 +27,6 @@ typedef struct {
} StgProfHeader;
/* -----------------------------------------------------------------------------
- The GranSim header
- -------------------------------------------------------------------------- */
-
-typedef struct {
- StgWord procs; /* bitmask indicating on which PEs this closure resides */
-} StgGranHeader;
-
-/* -----------------------------------------------------------------------------
The SMP header
A thunk has a padding word to take the updated value. This is so
@@ -63,9 +55,6 @@ typedef struct {
#ifdef PROFILING
StgProfHeader prof;
#endif
-#ifdef GRAN
- StgGranHeader gran;
-#endif
} StgHeader;
typedef struct {
@@ -73,9 +62,6 @@ typedef struct {
#ifdef PROFILING
StgProfHeader prof;
#endif
-#ifdef GRAN
- StgGranHeader gran;
-#endif
StgSMPThunkHeader smp;
} StgThunkHeader;
@@ -427,67 +413,4 @@ typedef struct {
StgClosure *alt_code;
} StgCatchRetryFrame;
-#if defined(PAR) || defined(GRAN)
-/*
- StgBlockingQueueElement is a ``collective type'' representing the types
- of closures that can be found on a blocking queue: StgTSO, StgRBHSave,
- StgBlockedFetch. (StgRBHSave can only appear at the end of a blocking
- queue). Logically, this is a union type, but defining another struct
- with a common layout is easier to handle in the code.
- Note that in the standard setup only StgTSOs can be on a blocking queue.
- This is one of the main reasons for slightly different code in files
- such as Schedule.c.
-*/
-typedef struct StgBlockingQueueElement_ {
- StgHeader header;
- struct StgBlockingQueueElement_ *link; /* next elem in BQ */
- struct StgClosure_ *payload[FLEXIBLE_ARRAY];/* contents of the closure */
-} StgBlockingQueueElement;
-
-/* only difference to std code is type of the elem in the BQ */
-typedef struct StgBlockingQueue_ {
- StgHeader header;
- struct StgBlockingQueueElement_ *blocking_queue; /* start of the BQ */
-} StgBlockingQueue;
-
-/* this closure is hanging at the end of a blocking queue in (see RBH.c) */
-typedef struct StgRBHSave_ {
- StgHeader header;
- StgClosure *payload[FLEXIBLE_ARRAY]; /* 2 words ripped out of the guts of the */
-} StgRBHSave; /* closure holding the blocking queue */
-
-typedef struct StgRBH_ {
- StgHeader header;
- struct StgBlockingQueueElement_ *blocking_queue; /* start of the BQ */
-} StgRBH;
-
-#endif
-
-#if defined(PAR)
-/* global indirections aka FETCH_ME closures */
-typedef struct StgFetchMe_ {
- StgHeader header;
- globalAddr *ga; /* ptr to unique id for a closure */
-} StgFetchMe;
-
-/* same contents as an ordinary StgBlockingQueue */
-typedef struct StgFetchMeBlockingQueue_ {
- StgHeader header;
- struct StgBlockingQueueElement_ *blocking_queue; /* start of the BQ */
-} StgFetchMeBlockingQueue;
-
-/* This is an entry in a blocking queue. It indicates a fetch request from a
- TSO on another PE demanding the value of this closur. Note that a
- StgBlockedFetch can only occur in a BQ. Once the node is evaluated and
- updated with the result, the result will be sent back (the PE is encoded
- in the globalAddr) and the StgBlockedFetch closure will be nuked.
-*/
-typedef struct StgBlockedFetch_ {
- StgHeader header;
- struct StgBlockingQueueElement_ *link; /* next elem in the BQ */
- StgClosure *node; /* node to fetch */
- globalAddr ga; /* where to send the result to */
-} StgBlockedFetch; /* NB: not just a ptr to a GA */
-#endif
-
#endif /* CLOSURES_H */
diff --git a/includes/Hooks.h b/includes/Hooks.h
index 38014cc8f7..e281c89ab9 100644
--- a/includes/Hooks.h
+++ b/includes/Hooks.h
@@ -14,7 +14,3 @@ extern void StackOverflowHook (unsigned long stack_size);
extern void OutOfHeapHook (unsigned long request_size, unsigned long heap_size);
extern void MallocFailHook (unsigned long request_size /* in bytes */, char *msg);
extern void defaultsHook (void);
-#if defined(PAR)
-extern void InitEachPEHook (void);
-extern void ShutdownEachPEHook (void);
-#endif
diff --git a/includes/InfoTables.h b/includes/InfoTables.h
index bbffea6468..0c6ab52745 100644
--- a/includes/InfoTables.h
+++ b/includes/InfoTables.h
@@ -54,70 +54,6 @@ typedef struct {
} StgProfInfo;
/* -----------------------------------------------------------------------------
- Parallelism info
- -------------------------------------------------------------------------- */
-
-#if 0 && (defined(PAR) || defined(GRAN))
-
-/* CURRENTLY UNUSED
- ToDo: use this in StgInfoTable (mutually recursive) -- HWL */
-
-typedef struct {
- StgInfoTable *rbh_infoptr; /* infoptr to the RBH */
-} StgParInfo;
-
-#endif /* 0 */
-
-/*
- Copied from ghc-0.29; ToDo: check this code -- HWL
-
- In the parallel system, all updatable closures have corresponding
- revertible black holes. When we are assembly-mangling, we guarantee
- that the revertible black hole code precedes the normal entry code, so
- that the RBH info table resides at a fixed offset from the normal info
- table. Otherwise, we add the RBH info table pointer to the end of the
- normal info table and vice versa.
-
- Currently has to use a !RBH_MAGIC_OFFSET setting.
- Still todo: init of par.infoptr field in all infotables!!
-*/
-
-#if defined(PAR) || defined(GRAN)
-
-# ifdef RBH_MAGIC_OFFSET
-
-# error magic offset not yet implemented
-
-# define RBH_INFO_WORDS 0
-# define INCLUDE_RBH_INFO(infoptr)
-
-# define RBH_INFOPTR(infoptr) (((P_)infoptr) - RBH_MAGIC_OFFSET)
-# define REVERT_INFOPTR(infoptr) (((P_)infoptr) + RBH_MAGIC_OFFSET)
-
-# else
-
-# define RBH_INFO_WORDS 1
-# define INCLUDE_RBH_INFO(info) rbh_infoptr : &(info)
-
-# define RBH_INFOPTR(infoptr) (((StgInfoTable *)(infoptr))->rbh_infoptr)
-# define REVERT_INFOPTR(infoptr) (((StgInfoTable *)(infoptr))->rbh_infoptr)
-
-# endif
-
-/* see ParallelRts.h */
-/*
-EXTFUN(RBH_entry);
-StgClosure *convertToRBH(StgClosure *closure);
-#if defined(GRAN)
-void convertFromRBH(StgClosure *closure);
-#elif defined(PAR)
-void convertToFetchMe(StgPtr closure, globalAddr *ga);
-#endif
-*/
-
-#endif
-
-/* -----------------------------------------------------------------------------
Ticky info
There is no ticky-specific stuff in an info table at this time.
@@ -282,9 +218,6 @@ typedef struct _StgInfoTable {
StgFunPtr entry; /* pointer to the entry code */
#endif
-#if defined(PAR) || defined(GRAN)
- struct _StgInfoTable *rbh_infoptr;
-#endif
#ifdef PROFILING
StgProfInfo prof;
#endif
diff --git a/includes/README b/includes/README
index fef91fe0fd..90695a6e7c 100644
--- a/includes/README
+++ b/includes/README
@@ -64,6 +64,7 @@ Rts.h
StgDLL.h /* stuff related to Windows DLLs */
MachRegs.h /* global register assignments for this arch */
Regs.h /* "registers" in the virtual machine */
+ TickyCounters.h
StgMiscClosures.h /* decls for closures & info tables in the RTS */
SMP.h /* basic primitives for synchronisation */
diff --git a/includes/Rts.h b/includes/Rts.h
index 1d455f0d6d..b038867e01 100644
--- a/includes/Rts.h
+++ b/includes/Rts.h
@@ -170,11 +170,7 @@ TAG_CLOSURE(StgWord tag,StgClosure * p)
/* Info tables, closures & code fragments defined in the RTS */
#include "StgMiscClosures.h"
-/* Simulated-parallel information */
-#include "GranSim.h"
-
/* Parallel information */
-#include "Parallel.h"
#include "OSThreads.h"
#include "SMPClosureOps.h"
#include "SpinLock.h"
@@ -190,9 +186,6 @@ TAG_CLOSURE(StgWord tag,StgClosure * p)
#include "Block.h"
#include "ClosureMacros.h"
- /* Ticky-ticky counters */
-#include "TickyCounters.h"
-
/* Runtime-system hooks */
#include "Hooks.h"
#include "RtsMessages.h"
@@ -287,18 +280,6 @@ TICK_VAR(2)
#define DEBUG_ONLY(s) doNothing()
#endif
-#if defined(GRAN) && defined(DEBUG)
-#define IF_GRAN_DEBUG(c,s) if (RtsFlags.GranFlags.Debug.c) { s; }
-#else
-#define IF_GRAN_DEBUG(c,s) doNothing()
-#endif
-
-#if defined(PAR) && defined(DEBUG)
-#define IF_PAR_DEBUG(c,s) if (RtsFlags.ParFlags.Debug.c) { s; }
-#else
-#define IF_PAR_DEBUG(c,s) doNothing()
-#endif
-
/* -----------------------------------------------------------------------------
Useful macros and inline functions
-------------------------------------------------------------------------- */
diff --git a/includes/RtsConfig.h b/includes/RtsConfig.h
index 2f683cb00f..3b088b7417 100644
--- a/includes/RtsConfig.h
+++ b/includes/RtsConfig.h
@@ -24,7 +24,7 @@
/*
* Whether the runtime system will use libbfd for debugging purposes.
*/
-#if defined(DEBUG) && defined(HAVE_BFD_H) && defined(HAVE_LIBBFD) && !defined(_WIN32) && !defined(PAR) && !defined(GRAN)
+#if defined(DEBUG) && defined(HAVE_BFD_H) && defined(HAVE_LIBBFD) && !defined(_WIN32)
#define USING_LIBBFD 1
#endif
@@ -55,9 +55,7 @@
Signals - supported on non-PAR versions of the runtime. See RtsSignals.h.
-------------------------------------------------------------------------- */
-#if !defined(PAR)
#define RTS_USER_SIGNALS 1
-#endif
/* Profile spin locks */
diff --git a/includes/RtsFlags.h b/includes/RtsFlags.h
index 348a8f5225..ab6f2982cd 100644
--- a/includes/RtsFlags.h
+++ b/includes/RtsFlags.h
@@ -61,8 +61,6 @@ struct DEBUG_FLAGS {
rtsBool stable; /* 't' */
rtsBool prof; /* 'p' */
rtsBool eventlog; /* 'e' */
- rtsBool gran; /* 'r' */
- rtsBool par; /* 'P' */
rtsBool linker; /* 'l' the object linker */
rtsBool apply; /* 'a' */
rtsBool stm; /* 'm' */
@@ -134,54 +132,6 @@ struct MISC_FLAGS {
* for the linker, NULL ==> off */
};
-#ifdef PAR
-/* currently the same as GRAN_STATS_FLAGS */
-struct PAR_STATS_FLAGS {
- rtsBool Full; /* Full .gr profile (rtsTrue) or only END events? */
- rtsBool Suppressed; /* No .gr profile at all */
- rtsBool Binary; /* Binary profile? (not yet implemented) */
- rtsBool Sparks; /* Info on sparks in profile? */
- rtsBool Heap; /* Info on heap allocs in profile? */
- rtsBool NewLogfile; /* Use new log-file format? (not yet implemented) */
- rtsBool Global; /* Global statistics? (printed on shutdown; no log file) */
-};
-
-struct PAR_DEBUG_FLAGS {
- /* flags to control debugging output in various subsystems */
- rtsBool verbose : 1; /* 1 */
- rtsBool bq : 1; /* 2 */
- rtsBool schedule : 1; /* 4 */
- rtsBool free : 1; /* 8 */
- rtsBool resume : 1; /* 16 */
- rtsBool weight : 1; /* 32 */
- rtsBool fetch : 1; /* 64 */
- rtsBool fish : 1; /* 128 */
- rtsBool tables : 1; /* 256 */
- rtsBool packet : 1; /* 512 */
- rtsBool pack : 1; /* 1024 */
- rtsBool paranoia : 1; /* 2048 */
-};
-
-#define MAX_PAR_DEBUG_OPTION 11
-#define PAR_DEBUG_MASK(n) ((nat)(ldexp(1,n)))
-#define MAX_PAR_DEBUG_MASK ((nat)(ldexp(1,(MAX_PAR_DEBUG_OPTION+1))-1))
-
-struct PAR_FLAGS {
- struct PAR_STATS_FLAGS ParStats; /* profile and stats output */
- struct PAR_DEBUG_FLAGS Debug; /* debugging options */
- rtsBool outputDisabled; /* Disable output for performance purposes */
- rtsBool doFairScheduling; /* Fair-ish scheduling (round robin; no time-slices) */
- nat packBufferSize;
- nat thunksToPack; /* number of thunks in packet + 1 */
- nat globalising; /* globalisation scheme */
- nat maxLocalSparks; /* spark pool size */
- nat maxThreads; /* thread pool size */
- nat maxFishes; /* max number of active fishes */
- rtsTime fishDelay; /* delay before sending a new fish */
- long wait;
-};
-#endif /* PAR */
-
#ifdef THREADED_RTS
struct PAR_FLAGS {
nat nNodes; /* number of threads to run simultaneously */
@@ -196,121 +146,6 @@ struct PAR_FLAGS {
};
#endif /* THREADED_RTS */
-#ifdef GRAN
-struct GRAN_STATS_FLAGS {
- rtsBool Full; /* Full .gr profile (rtsTrue) or only END events? */
- rtsBool Suppressed; /* No .gr profile at all */
- rtsBool Binary; /* Binary profile? (not yet implemented) */
- rtsBool Sparks; /* Info on sparks in profile? */
- rtsBool Heap; /* Info on heap allocs in profile? */
- rtsBool NewLogfile; /* Use new log-file format? (not yet implemented) */
- rtsBool Global; /* Global statistics? (printed on shutdown; no log file) */
-};
-
-struct GRAN_COST_FLAGS {
- /* Communication Cost Variables -- set in main program */
- nat latency; /* Latency for single packet */
- nat additional_latency; /* Latency for additional packets */
- nat fetchtime;
- nat lunblocktime; /* Time for local unblock */
- nat gunblocktime; /* Time for global unblock */
- nat mpacktime; /* Cost of creating a packet */
- nat munpacktime; /* Cost of receiving a packet */
- nat mtidytime; /* Cost of cleaning up after send */
-
- nat threadcreatetime; /* Thread creation costs */
- nat threadqueuetime; /* Cost of adding a thread to the running/runnable queue */
- nat threaddescheduletime; /* Cost of descheduling a thread */
- nat threadscheduletime; /* Cost of scheduling a thread */
- nat threadcontextswitchtime; /* Cost of context switch */
-
- /* Instruction Costs */
- nat arith_cost; /* arithmetic instructions (+,i,< etc) */
- nat branch_cost; /* branch instructions */
- nat load_cost; /* load into register */
- nat store_cost; /* store into memory */
- nat float_cost; /* floating point operations */
-
- nat heapalloc_cost; /* heap allocation costs */
-
- /* Overhead for granularity control mechanisms */
- /* overhead per elem of spark queue */
- nat pri_spark_overhead;
- /* overhead per elem of thread queue */
- nat pri_sched_overhead;
-};
-
-struct GRAN_DEBUG_FLAGS {
- /* flags to control debugging output in various subsystems */
- rtsBool event_trace : 1; /* 1 */
- rtsBool event_stats : 1; /* 2 */
- rtsBool bq : 1; /* 4 */
- rtsBool pack : 1; /* 8 */
- rtsBool checkSparkQ : 1; /* 16 */
- rtsBool thunkStealing : 1; /* 32 */
- rtsBool randomSteal : 1; /* 64 */
- rtsBool findWork : 1; /* 128 */
- rtsBool unused : 1; /* 256 */
- rtsBool pri : 1; /* 512 */
- rtsBool checkLight : 1; /* 1024 */
- rtsBool sortedQ : 1; /* 2048 */
- rtsBool blockOnFetch : 1; /* 4096 */
- rtsBool packBuffer : 1; /* 8192 */
- rtsBool blockOnFetch_sanity : 1; /* 16384 */
-};
-
-#define MAX_GRAN_DEBUG_OPTION 14
-#define GRAN_DEBUG_MASK(n) ((nat)(ldexp(1,n)))
-#define MAX_GRAN_DEBUG_MASK ((nat)(ldexp(1,(MAX_GRAN_DEBUG_OPTION+1))-1))
-
-struct GRAN_FLAGS {
- struct GRAN_STATS_FLAGS GranSimStats; /* profile and stats output */
- struct GRAN_COST_FLAGS Costs; /* cost metric for simulation */
- struct GRAN_DEBUG_FLAGS Debug; /* debugging options */
-
- nat maxThreads; /* ToDo: share with THREADED_RTS and GUM */
- /* rtsBool labelling; */
- nat packBufferSize;
- nat packBufferSize_internal;
-
- PEs proc; /* number of processors */
- rtsBool Fishing; /* Simulate GUM style fishing mechanism? */
- nat maxFishes; /* max number of spark or thread steals */
- rtsTime time_slice; /* max time slice of one reduction thread */
-
- /* GrAnSim-Light: This version puts no bound on the number of
- processors but in exchange doesn't model communication costs
- (all communication is 0 cost). Mainly intended to show maximal
- degree of parallelism in the program (*not* to simulate the
- execution on a real machine). */
-
- rtsBool Light;
-
- rtsBool DoFairSchedule ; /* fair scheduling alg? default: unfair */
- rtsBool DoAsyncFetch; /* async. communication? */
- rtsBool DoStealThreadsFirst; /* prefer threads over sparks when stealing */
- rtsBool DoAlwaysCreateThreads; /* eager thread creation */
- rtsBool DoBulkFetching; /* bulk fetching */
- rtsBool DoThreadMigration; /* allow to move threads */
- nat FetchStrategy; /* what to do when waiting for data */
- rtsBool PreferSparksOfLocalNodes; /* prefer local over global sparks */
- rtsBool DoPrioritySparking; /* sparks sorted by priorities */
- rtsBool DoPriorityScheduling; /* threads sorted by priorities */
- nat SparkPriority; /* threshold for cut-off mechanism */
- nat SparkPriority2;
- rtsBool RandomPriorities;
- rtsBool InversePriorities;
- rtsBool IgnorePriorities;
- nat ThunksToPack; /* number of thunks in packet + 1 */
- rtsBool RandomSteal; /* steal spark/thread from random proc */
- rtsBool NoForward; /* no forwarding of fetch messages */
-
- /* unsigned int debug; */
- /* rtsBool event_trace; */
- /* rtsBool event_trace_all; */
-};
-#endif /* GRAN */
-
struct TICKY_FLAGS {
rtsBool showTickyStats;
FILE *tickyFile;
@@ -349,12 +184,9 @@ typedef struct _RTS_FLAGS {
#endif
struct TICKY_FLAGS TickyFlags;
-#if defined(THREADED_RTS) || defined(PAR)
+#if defined(THREADED_RTS)
struct PAR_FLAGS ParFlags;
#endif
-#ifdef GRAN
- struct GRAN_FLAGS GranFlags;
-#endif
#ifdef USE_PAPI
struct PAPI_FLAGS PapiFlags;
#endif
diff --git a/includes/RtsTypes.h b/includes/RtsTypes.h
index d4970053e7..79bbf1fccf 100644
--- a/includes/RtsTypes.h
+++ b/includes/RtsTypes.h
@@ -41,50 +41,4 @@ typedef enum {
typedef ullong rtsTime;
-#if defined(PAR)
-/* types only needed in the parallel system */
-typedef struct hashtable ParHashTable;
-typedef struct hashlist ParHashList;
-
-/* typedef double REAL_TIME; */
-/* typedef W_ TIME; */
-/* typedef GlobalTaskId Proc; */
-typedef int GlobalTaskId;
-typedef GlobalTaskId PEs;
-typedef unsigned int rtsWeight;
-typedef int rtsPacket;
-typedef int OpCode;
-
-/* Global addresses i.e. unique ids in a parallel setup; needed in Closures.h*/
-typedef struct {
- union {
- StgPtr plc;
- struct {
- GlobalTaskId gtid;
- int slot;
- } gc;
- } payload;
- rtsWeight weight;
-} globalAddr;
-
-/* (GA, LA) pairs */
-typedef struct gala {
- globalAddr ga;
- StgPtr la;
- struct gala *next;
- rtsBool preferred;
-} GALA;
-
-#elif defined(GRAN)
-
-/*
- * GlobalTaskId is dummy in GranSim;
- * we define it to have cleaner code in the RTS
- */
-typedef int GlobalTaskId;
-typedef lnat rtsTime;
-typedef StgWord PEs;
-
-#endif
-
#endif /* RTS_TYPES_H */
diff --git a/includes/SMP.h b/includes/SMP.h
index ac98feb7a3..873bbbbfc2 100644
--- a/includes/SMP.h
+++ b/includes/SMP.h
@@ -18,7 +18,7 @@
#if defined(THREADED_RTS)
-#if defined(TICKY_TICKY)
+#if defined(TICKY_TICKY)
#error Build options incompatible with THREADED_RTS.
#endif
diff --git a/includes/SchedAPI.h b/includes/SchedAPI.h
index 8dff6ea63d..b11437bda2 100644
--- a/includes/SchedAPI.h
+++ b/includes/SchedAPI.h
@@ -10,19 +10,10 @@
#ifndef SCHEDAPI_H
#define SCHEDAPI_H
-#if defined(GRAN)
-/* Dummy def for NO_PRI if not in GranSim */
-#define NO_PRI 0
-#endif
-
/*
* Creating threads
*/
-#if defined(GRAN)
-StgTSO *createThread (Capability *cap, nat stack_size, StgInt pri);
-#else
StgTSO *createThread (Capability *cap, nat stack_size);
-#endif
Capability *scheduleWaitThread (StgTSO *tso, /*out*/HaskellObj* ret,
Capability *cap);
diff --git a/includes/Stg.h b/includes/Stg.h
index 2b2095f030..341cda3668 100644
--- a/includes/Stg.h
+++ b/includes/Stg.h
@@ -206,9 +206,7 @@ typedef StgWord StgWordArray[];
#include "MachRegs.h"
#include "Regs.h"
-#ifdef TICKY_TICKY
#include "TickyCounters.h"
-#endif
#if IN_STG_CODE
/*
diff --git a/includes/StgMiscClosures.h b/includes/StgMiscClosures.h
index e2ec9e4d74..5131f01b9b 100644
--- a/includes/StgMiscClosures.h
+++ b/includes/StgMiscClosures.h
@@ -92,12 +92,6 @@ RTS_INFO(stg_BLACKHOLE_info);
RTS_INFO(__stg_EAGER_BLACKHOLE_info);
RTS_INFO(stg_CAF_BLACKHOLE_info);
-#if defined(PAR) || defined(GRAN)
-RTS_INFO(stg_RBH_info);
-#endif
-#if defined(PAR)
-RTS_INFO(stg_FETCH_ME_BQ_info);
-#endif
RTS_FUN_INFO(stg_BCO_info);
RTS_INFO(stg_EVACUATED_info);
RTS_INFO(stg_WEAK_info);
@@ -147,12 +141,6 @@ RTS_ENTRY(stg_WHITEHOLE_entry);
RTS_ENTRY(stg_BLACKHOLE_entry);
RTS_ENTRY(__stg_EAGER_BLACKHOLE_entry);
RTS_ENTRY(stg_CAF_BLACKHOLE_entry);
-#if defined(PAR) || defined(GRAN)
-RTS_ENTRY(stg_RBH_entry);
-#endif
-#if defined(PAR)
-RTS_ENTRY(stg_FETCH_ME_BQ_entry);
-#endif
RTS_ENTRY(stg_BCO_entry);
RTS_ENTRY(stg_EVACUATED_entry);
RTS_ENTRY(stg_WEAK_entry);
diff --git a/includes/TSO.h b/includes/TSO.h
index c6ec6697d4..be50c124fc 100644
--- a/includes/TSO.h
+++ b/includes/TSO.h
@@ -33,16 +33,6 @@ typedef struct {
} StgTSOStatBuf;
/*
- * GRAN: We distinguish between the various classes of threads in
- * the system.
- */
-typedef enum {
- AdvisoryPriority,
- MandatoryPriority,
- RevalPriority
-} StgThreadPriority;
-
-/*
* PROFILING info in a TSO
*/
typedef struct {
@@ -50,25 +40,6 @@ typedef struct {
} StgTSOProfInfo;
/*
- * PAR info in a TSO
- */
-typedef StgTSOStatBuf StgTSOParInfo;
-
-/*
- * DIST info in a TSO
- */
-typedef struct {
- StgThreadPriority priority;
- StgInt revalTid; /* ToDo: merge both into 1 word */
- StgInt revalSlot;
-} StgTSODistInfo;
-
-/*
- * GRAN info in a TSO
- */
-typedef StgTSOStatBuf StgTSOGranInfo;
-
-/*
* There is no TICKY info in a TSO at this time.
*/
@@ -164,15 +135,6 @@ typedef struct StgTSO_ {
#ifdef PROFILING
StgTSOProfInfo prof;
#endif
-#ifdef PAR
- StgTSOParInfo par;
-#endif
-#ifdef GRAN
- StgTSOGranInfo gran;
-#endif
-#ifdef DIST
- StgTSODistInfo dist;
-#endif
#ifdef mingw32_HOST_OS
StgWord32 saved_winerror;
#endif
@@ -260,16 +222,7 @@ extern StgTSO dummy_tso;
#define TSO_STRUCT_SIZEW (TSO_STRUCT_SIZE / sizeof(W_))
-
/* this is the NIL ptr for a TSO queue (e.g. runnable queue) */
#define END_TSO_QUEUE ((StgTSO *)(void*)&stg_END_TSO_QUEUE_closure)
-#if defined(PAR) || defined(GRAN)
-/* this is the NIL ptr for a blocking queue */
-# define END_BQ_QUEUE ((StgBlockingQueueElement *)(void*)&stg_END_TSO_QUEUE_closure)
-/* this is the NIL ptr for a blocked fetch queue (as in PendingFetches in GUM) */
-# define END_BF_QUEUE ((StgBlockedFetch *)(void*)&stg_END_TSO_QUEUE_closure)
-#endif
-/* ToDo?: different name for end of sleeping queue ? -- HWL */
-
#endif /* TSO_H */
diff --git a/includes/TickyCounters.h b/includes/TickyCounters.h
index 80d1aee2e4..38e84ef2af 100644
--- a/includes/TickyCounters.h
+++ b/includes/TickyCounters.h
@@ -159,19 +159,6 @@ EXTERN StgInt RET_SEMI_loads_avoided INIT(0);
/* End of counter declarations. */
-/* Here are stubs for a bunch of macros that aren't
- implemented yet. */
-
-#define TICK_ALLOC_FUN(g,s)
-#define TICK_ALLOC_CON(g,s)
-#define TICK_ALLOC_TUP(g,s)
-#define TICK_ALLOC_BH(g,s)
-#define TICK_ALLOC_PAP(g,s)
-#define TICK_ALLOC_FMBQ(a,g,s)
-#define TICK_ALLOC_FME(a,g,s)
-#define TICK_ALLOC_BF(a,g,s)
-#define TICK_ALLOC_PRIM2(w)
-
#endif /* TICKY_TICKY */
/* This is ugly, but the story is:
diff --git a/includes/mkDerivedConstants.c b/includes/mkDerivedConstants.c
index e9bff955a8..323a7d4641 100644
--- a/includes/mkDerivedConstants.c
+++ b/includes/mkDerivedConstants.c
@@ -168,7 +168,7 @@
/* Full byte offset for a TSO field, for use from Cmm */
#define tso_field_offset_macro(str) \
- printf("#define TSO_OFFSET_" str " (SIZEOF_StgHeader+SIZEOF_OPT_StgTSOProfInfo+SIZEOF_OPT_StgTSOParInfo+SIZEOF_OPT_StgTSOGranInfo+SIZEOF_OPT_StgTSODistInfo+OFFSET_" str ")\n");
+ printf("#define TSO_OFFSET_" str " (SIZEOF_StgHeader+SIZEOF_OPT_StgTSOProfInfo+OFFSET_" str ")\n");
#define tso_field_offset(s_type, field) \
tso_payload_offset(s_type, field); \
@@ -200,7 +200,6 @@ main(int argc, char *argv[])
printf("#define STD_HDR_SIZE %lu\n", (unsigned long)sizeofW(StgHeader) - sizeofW(StgProfHeader));
/* grrr.. PROFILING is on so we need to subtract sizeofW(StgProfHeader) */
printf("#define PROF_HDR_SIZE %lu\n", (unsigned long)sizeofW(StgProfHeader));
- printf("#define GRAN_HDR_SIZE %lu\n", (unsigned long)sizeofW(StgGranHeader));
printf("#define BLOCK_SIZE %u\n", BLOCK_SIZE);
printf("#define MBLOCK_SIZE %u\n", MBLOCK_SIZE);
@@ -309,14 +308,8 @@ main(int argc, char *argv[])
tso_field(StgTSO, stack_size);
struct_size(StgTSOProfInfo);
- struct_size(StgTSOParInfo);
- struct_size(StgTSOGranInfo);
- struct_size(StgTSODistInfo);
opt_struct_size(StgTSOProfInfo,PROFILING);
- opt_struct_size(StgTSOParInfo,PAR);
- opt_struct_size(StgTSOGranInfo,GRAN);
- opt_struct_size(StgTSODistInfo,DIST);
closure_field(StgUpdateFrame, updatee);