diff options
Diffstat (limited to 'includes')
-rw-r--r-- | includes/ClosureMacros.h | 18 | ||||
-rw-r--r-- | includes/Closures.h | 77 | ||||
-rw-r--r-- | includes/Hooks.h | 4 | ||||
-rw-r--r-- | includes/InfoTables.h | 67 | ||||
-rw-r--r-- | includes/README | 1 | ||||
-rw-r--r-- | includes/Rts.h | 19 | ||||
-rw-r--r-- | includes/RtsConfig.h | 4 | ||||
-rw-r--r-- | includes/RtsFlags.h | 170 | ||||
-rw-r--r-- | includes/RtsTypes.h | 46 | ||||
-rw-r--r-- | includes/SMP.h | 2 | ||||
-rw-r--r-- | includes/SchedAPI.h | 9 | ||||
-rw-r--r-- | includes/Stg.h | 2 | ||||
-rw-r--r-- | includes/StgMiscClosures.h | 12 | ||||
-rw-r--r-- | includes/TSO.h | 47 | ||||
-rw-r--r-- | includes/TickyCounters.h | 13 | ||||
-rw-r--r-- | includes/mkDerivedConstants.c | 9 |
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); |