rtsBool ringBell;
rtsBool frontpanel;
- int idleGCDelayTicks; /* in milliseconds */
+ int idleGCDelayTime; /* in milliseconds */
};
struct DEBUG_FLAGS {
nat maxRetainerSetSize;
+ nat ccsLength;
+
char* modSelector;
char* descrSelector;
char* typeSelector;
int ctxtSwitchTicks; /* derived */
};
+struct MISC_FLAGS {
+ int tickInterval; /* in milliseconds */
+};
+
#ifdef PAR
/* currently the same as GRAN_STATS_FLAGS */
struct PAR_STATS_FLAGS {
/* Put them together: */
+#ifdef USE_PAPI
+struct PAPI_FLAGS {
+ nat eventType; /* The type of events to count */
+};
+
+#define PAPI_FLAG_CACHE_L1 1
+#define PAPI_FLAG_CACHE_L2 2
+#define PAPI_FLAG_BRANCH 3
+#define PAPI_FLAG_STALLS 4
+
+#endif
+
typedef struct _RTS_FLAGS {
/* The first portion of RTS_FLAGS is invariant. */
struct GC_FLAGS GcFlags;
struct CONCURRENT_FLAGS ConcFlags;
+ struct MISC_FLAGS MiscFlags;
struct DEBUG_FLAGS DebugFlags;
struct COST_CENTRE_FLAGS CcFlags;
struct PROFILING_FLAGS ProfFlags;
#ifdef GRAN
struct GRAN_FLAGS GranFlags;
#endif
+#ifdef USE_PAPI
+ struct PAPI_FLAGS PapiFlags;
+#endif
} RTS_FLAGS;
#ifdef COMPILING_RTS_MAIN