aboutsummaryrefslogtreecommitdiffstats
path: root/mps/code
diff options
context:
space:
mode:
authorRichard Brooksby2012-08-31 16:42:17 +0100
committerRichard Brooksby2012-08-31 16:42:17 +0100
commitc4c3595fb8c79b3c1d58cd7beb5bcd7397495245 (patch)
tree05d2405aa4ddd39a85fb58045e2b39c07c1788f2 /mps/code
parent7047e27cd12f60df3313a36d62bb8dfb87a3ea5d (diff)
downloademacs-c4c3595fb8c79b3c1d58cd7beb5bcd7397495245.tar.gz
emacs-c4c3595fb8c79b3c1d58cd7beb5bcd7397495245.zip
Now there is no measurable performance penalty for events, they're on in all varieties (except we).
Copied from Perforce Change: 179137 ServerID: perforce.ravenbrook.com
Diffstat (limited to 'mps/code')
-rw-r--r--mps/code/comm.gmk5
-rw-r--r--mps/code/commpre.nmk3
-rw-r--r--mps/code/config.h12
-rw-r--r--mps/code/event.c17
-rw-r--r--mps/code/eventcom.h2
-rw-r--r--mps/code/mpm.h2
6 files changed, 15 insertions, 26 deletions
diff --git a/mps/code/comm.gmk b/mps/code/comm.gmk
index 9141c34c9cd..3dfb562b401 100644
--- a/mps/code/comm.gmk
+++ b/mps/code/comm.gmk
@@ -130,7 +130,6 @@ CFDI = -DCONFIG_VAR_DI -DNDEBUG $(CFLAGSOPT)
130CFII = -DCONFIG_VAR_II -DNDEBUG $(CFLAGSOPT) 130CFII = -DCONFIG_VAR_II -DNDEBUG $(CFLAGSOPT)
131CFCE = -DCONFIG_VAR_CE $(CFLAGSOPTNODEBUG) 131CFCE = -DCONFIG_VAR_CE $(CFLAGSOPTNODEBUG)
132CFCI = -DCONFIG_VAR_CI $(CFLAGSDEBUG) 132CFCI = -DCONFIG_VAR_CI $(CFLAGSDEBUG)
133CFTI = -DCONFIG_VAR_TI $(CFLAGSDEBUG)
134 133
135# Bind CFLAGS to the appropriate set of flags for the variety. 134# Bind CFLAGS to the appropriate set of flags for the variety.
136# %%VARIETY: Add a test for the variety and set CFLAGS here. 135# %%VARIETY: Add a test for the variety and set CFLAGS here.
@@ -158,10 +157,6 @@ else
158ifeq ($(VARIETY),ci) 157ifeq ($(VARIETY),ci)
159CFLAGS=$(CFLAGSCOMMON) $(CFCI) 158CFLAGS=$(CFLAGSCOMMON) $(CFCI)
160else 159else
161ifeq ($(VARIETY),ti)
162CFLAGS=$(CFLAGSCOMMON) $(CFTI)
163else
164endif
165endif 160endif
166endif 161endif
167endif 162endif
diff --git a/mps/code/commpre.nmk b/mps/code/commpre.nmk
index a27b704134c..ff8641446ab 100644
--- a/mps/code/commpre.nmk
+++ b/mps/code/commpre.nmk
@@ -151,7 +151,6 @@ CFHI = /DCONFIG_VAR_HI $(CRTFLAGSH) $(CFLAGSHOT) $(CFLAGSINTERNAL)
151CFDI = /DCONFIG_VAR_DI $(CRTFLAGSH) $(CFLAGSHOT) $(CFLAGSINTERNAL) 151CFDI = /DCONFIG_VAR_DI $(CRTFLAGSH) $(CFLAGSHOT) $(CFLAGSINTERNAL)
152CFCE = /DCONFIG_VAR_CE $(CRTFLAGSC) $(CFLAGSCOOL) $(CFLAGSEXTERNAL) 152CFCE = /DCONFIG_VAR_CE $(CRTFLAGSC) $(CFLAGSCOOL) $(CFLAGSEXTERNAL)
153CFCI = /DCONFIG_VAR_CI $(CRTFLAGSC) $(CFLAGSCOOL) $(CFLAGSINTERNAL) 153CFCI = /DCONFIG_VAR_CI $(CRTFLAGSC) $(CFLAGSCOOL) $(CFLAGSINTERNAL)
154CFTI = /DCONFIG_VAR_TI $(CRTFLAGSC) $(CFLAGSCOOL) $(CFLAGSINTERNAL)
155 154
156# Microsoft documentation is not very clear on the point of using both 155# Microsoft documentation is not very clear on the point of using both
157# optimization and debug information 156# optimization and debug information
@@ -171,7 +170,6 @@ LFHI = $(LINKFLAGSHOT) $(LINKFLAGSINTERNAL)
171LFDI = $(LINKFLAGSHOT) $(LINKFLAGSINTERNAL) 170LFDI = $(LINKFLAGSHOT) $(LINKFLAGSINTERNAL)
172LFCE = $(LINKFLAGSCOOL) $(LINKFLAGSEXTERNAL) 171LFCE = $(LINKFLAGSCOOL) $(LINKFLAGSEXTERNAL)
173LFCI = $(LINKFLAGSCOOL) $(LINKFLAGSINTERNAL) 172LFCI = $(LINKFLAGSCOOL) $(LINKFLAGSINTERNAL)
174LFTI = $(LINKFLAGSCOOL) $(LINKFLAGSINTERNAL)
175 173
176#LFCV = /PROFILE /DEBUG:full /DEBUGTYPE:cv 174#LFCV = /PROFILE /DEBUG:full /DEBUGTYPE:cv
177 175
@@ -187,7 +185,6 @@ LIBFLAGSHI =
187LIBFLAGSDI = 185LIBFLAGSDI =
188LIBFLAGSCE = 186LIBFLAGSCE =
189LIBFLAGSCI = 187LIBFLAGSCI =
190LIBFLAGSTI =
191#LIBFLAGSCV = 188#LIBFLAGSCV =
192 189
193# Browser database manager [not used at present] 190# Browser database manager [not used at present]
diff --git a/mps/code/config.h b/mps/code/config.h
index 85ae3d07eea..0685c84fd4b 100644
--- a/mps/code/config.h
+++ b/mps/code/config.h
@@ -49,7 +49,7 @@
49#define CONFIG_ASSERT 49#define CONFIG_ASSERT
50#define CHECKLEVEL_INITIAL CheckLevelMINIMAL 50#define CHECKLEVEL_INITIAL CheckLevelMINIMAL
51/* no statistic meters */ 51/* no statistic meters */
52/* no telemetry log events */ 52#define CONFIG_LOG
53 53
54#elif defined(CONFIG_VAR_DI) /* Diagnostic variety */ 54#elif defined(CONFIG_VAR_DI) /* Diagnostic variety */
55#define CONFIG_ASSERT 55#define CONFIG_ASSERT
@@ -61,18 +61,12 @@
61 */ 61 */
62#define DIAG_WITH_STREAM_AND_WRITEF 62#define DIAG_WITH_STREAM_AND_WRITEF
63/* #define DIAG_WITH_PRINTF */ 63/* #define DIAG_WITH_PRINTF */
64/* no telemetry log events */ 64#define CONFIG_LOG
65 65
66#elif defined(CONFIG_VAR_CI) || defined(CONFIG_VAR_CE) /* Cool varieties */ 66#elif defined(CONFIG_VAR_CI) || defined(CONFIG_VAR_CE) /* Cool varieties */
67#define CONFIG_ASSERT 67#define CONFIG_ASSERT
68/* ... let PRODUCT determine CHECKLEVEL_INITIAL */ 68/* ... let PRODUCT determine CHECKLEVEL_INITIAL */
69#define CONFIG_STATS 69#define CONFIG_STATS
70/* no telemetry log events */
71
72#elif defined(CONFIG_VAR_TI) /* Telemetry, Internal; variety.ti */
73#define CONFIG_ASSERT
74/* ... let PRODUCT determine CHECKLEVEL_INITIAL */
75#define CONFIG_STATS
76#define CONFIG_LOG 70#define CONFIG_LOG
77 71
78#elif defined(CONFIG_VAR_II) /* Ice, Internal; variety.ii (HotLog) */ 72#elif defined(CONFIG_VAR_II) /* Ice, Internal; variety.ii (HotLog) */
@@ -82,8 +76,6 @@
82#define CONFIG_LOG 76#define CONFIG_LOG
83#endif 77#endif
84 78
85#define CONFIG_STATS
86#define CONFIG_LOG
87 79
88/* Build Features */ 80/* Build Features */
89 81
diff --git a/mps/code/event.c b/mps/code/event.c
index 9018e8e9b33..6400e6917e6 100644
--- a/mps/code/event.c
+++ b/mps/code/event.c
@@ -383,9 +383,9 @@ void EventDump(mps_lib_FILE *stream)
383#else /* EVENT, not */ 383#else /* EVENT, not */
384 384
385 385
386Res (EventSync)(void) 386void (EventSync)(void)
387{ 387{
388 return ResOK; 388 NOOP;
389} 389}
390 390
391 391
@@ -413,16 +413,18 @@ EventControlSet (EventControl)(EventControlSet resetMask,
413EventStringId (EventInternString)(const char *label) 413EventStringId (EventInternString)(const char *label)
414{ 414{
415 UNUSED(label); 415 UNUSED(label);
416 NOTREACHED; 416 /* EventInternString is reached in varieties without events, but the result
417 return (EventInternString)0x9024EACH; 417 is not used for anything. */
418 return (EventStringId)0x9024EAC8;
418} 419}
419 420
420 421
421Word (EventInternGenString)(size_t len, const char *label) 422Word (EventInternGenString)(size_t len, const char *label)
422{ 423{
423 UNUSED(len); UNUSED(label); 424 UNUSED(len); UNUSED(label);
424 NOTREACHED; 425 /* EventInternGenString is reached in varieties without events, but
425 return (EventInternString)0x9024EACH; 426 the result is not used for anything. */
427 return (EventStringId)0x9024EAC8;
426} 428}
427 429
428 430
@@ -430,7 +432,8 @@ void (EventLabelAddr)(Addr addr, Word id)
430{ 432{
431 UNUSED(addr); 433 UNUSED(addr);
432 UNUSED(id); 434 UNUSED(id);
433 NOTREACHED; 435 /* EventLabelAddr is reached in varieties without events, but doesn't have
436 to do anything. */
434} 437}
435 438
436 439
diff --git a/mps/code/eventcom.h b/mps/code/eventcom.h
index 89b216132b1..2442439d287 100644
--- a/mps/code/eventcom.h
+++ b/mps/code/eventcom.h
@@ -53,6 +53,7 @@ typedef unsigned long long EventClock;
53 END 53 END
54 54
55#define EVENT_CLOCK_PRINT(stream, clock) fprintf(stream, "%llu", clock) 55#define EVENT_CLOCK_PRINT(stream, clock) fprintf(stream, "%llu", clock)
56/* FIXME: No EVENT_CLOCK_WRITE */
56 57
57#endif /* __has_builtin(__builtin_readcyclecounter) */ 58#endif /* __has_builtin(__builtin_readcyclecounter) */
58 59
@@ -95,6 +96,7 @@ typedef Word EventClock;
95 96
96#define EVENT_CLOCK_PRINT(stream, clock) \ 97#define EVENT_CLOCK_PRINT(stream, clock) \
97 fprintf(stream, "%llu", (unsigned long long)clock) 98 fprintf(stream, "%llu", (unsigned long long)clock)
99/* FIXME: No EVENT_CLOCK_WRITE */
98 100
99#endif 101#endif
100 102
diff --git a/mps/code/mpm.h b/mps/code/mpm.h
index b5a58eeef59..a32abe3cca2 100644
--- a/mps/code/mpm.h
+++ b/mps/code/mpm.h
@@ -978,7 +978,7 @@ extern void StackProbe(Size depth);
978#elif defined(STATISTICS_NONE) 978#elif defined(STATISTICS_NONE)
979 979
980#define STATISTIC(gather) DISCARD(((gather), 0)) 980#define STATISTIC(gather) DISCARD(((gather), 0))
981#define STATISTIC_STAT(gather) DISCARD_STAT(gather) 981#define STATISTIC_STAT DISCARD_STAT
982#define STATISTIC_WRITE(format, arg) 982#define STATISTIC_WRITE(format, arg)
983 983
984#else 984#else