diff options
| author | Richard Brooksby | 2012-08-31 16:42:17 +0100 |
|---|---|---|
| committer | Richard Brooksby | 2012-08-31 16:42:17 +0100 |
| commit | c4c3595fb8c79b3c1d58cd7beb5bcd7397495245 (patch) | |
| tree | 05d2405aa4ddd39a85fb58045e2b39c07c1788f2 /mps/code | |
| parent | 7047e27cd12f60df3313a36d62bb8dfb87a3ea5d (diff) | |
| download | emacs-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.gmk | 5 | ||||
| -rw-r--r-- | mps/code/commpre.nmk | 3 | ||||
| -rw-r--r-- | mps/code/config.h | 12 | ||||
| -rw-r--r-- | mps/code/event.c | 17 | ||||
| -rw-r--r-- | mps/code/eventcom.h | 2 | ||||
| -rw-r--r-- | mps/code/mpm.h | 2 |
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) | |||
| 130 | CFII = -DCONFIG_VAR_II -DNDEBUG $(CFLAGSOPT) | 130 | CFII = -DCONFIG_VAR_II -DNDEBUG $(CFLAGSOPT) |
| 131 | CFCE = -DCONFIG_VAR_CE $(CFLAGSOPTNODEBUG) | 131 | CFCE = -DCONFIG_VAR_CE $(CFLAGSOPTNODEBUG) |
| 132 | CFCI = -DCONFIG_VAR_CI $(CFLAGSDEBUG) | 132 | CFCI = -DCONFIG_VAR_CI $(CFLAGSDEBUG) |
| 133 | CFTI = -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 | |||
| 158 | ifeq ($(VARIETY),ci) | 157 | ifeq ($(VARIETY),ci) |
| 159 | CFLAGS=$(CFLAGSCOMMON) $(CFCI) | 158 | CFLAGS=$(CFLAGSCOMMON) $(CFCI) |
| 160 | else | 159 | else |
| 161 | ifeq ($(VARIETY),ti) | ||
| 162 | CFLAGS=$(CFLAGSCOMMON) $(CFTI) | ||
| 163 | else | ||
| 164 | endif | ||
| 165 | endif | 160 | endif |
| 166 | endif | 161 | endif |
| 167 | endif | 162 | endif |
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) | |||
| 151 | CFDI = /DCONFIG_VAR_DI $(CRTFLAGSH) $(CFLAGSHOT) $(CFLAGSINTERNAL) | 151 | CFDI = /DCONFIG_VAR_DI $(CRTFLAGSH) $(CFLAGSHOT) $(CFLAGSINTERNAL) |
| 152 | CFCE = /DCONFIG_VAR_CE $(CRTFLAGSC) $(CFLAGSCOOL) $(CFLAGSEXTERNAL) | 152 | CFCE = /DCONFIG_VAR_CE $(CRTFLAGSC) $(CFLAGSCOOL) $(CFLAGSEXTERNAL) |
| 153 | CFCI = /DCONFIG_VAR_CI $(CRTFLAGSC) $(CFLAGSCOOL) $(CFLAGSINTERNAL) | 153 | CFCI = /DCONFIG_VAR_CI $(CRTFLAGSC) $(CFLAGSCOOL) $(CFLAGSINTERNAL) |
| 154 | CFTI = /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) | |||
| 171 | LFDI = $(LINKFLAGSHOT) $(LINKFLAGSINTERNAL) | 170 | LFDI = $(LINKFLAGSHOT) $(LINKFLAGSINTERNAL) |
| 172 | LFCE = $(LINKFLAGSCOOL) $(LINKFLAGSEXTERNAL) | 171 | LFCE = $(LINKFLAGSCOOL) $(LINKFLAGSEXTERNAL) |
| 173 | LFCI = $(LINKFLAGSCOOL) $(LINKFLAGSINTERNAL) | 172 | LFCI = $(LINKFLAGSCOOL) $(LINKFLAGSINTERNAL) |
| 174 | LFTI = $(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 = | |||
| 187 | LIBFLAGSDI = | 185 | LIBFLAGSDI = |
| 188 | LIBFLAGSCE = | 186 | LIBFLAGSCE = |
| 189 | LIBFLAGSCI = | 187 | LIBFLAGSCI = |
| 190 | LIBFLAGSTI = | ||
| 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 | ||
| 386 | Res (EventSync)(void) | 386 | void (EventSync)(void) |
| 387 | { | 387 | { |
| 388 | return ResOK; | 388 | NOOP; |
| 389 | } | 389 | } |
| 390 | 390 | ||
| 391 | 391 | ||
| @@ -413,16 +413,18 @@ EventControlSet (EventControl)(EventControlSet resetMask, | |||
| 413 | EventStringId (EventInternString)(const char *label) | 413 | EventStringId (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 | ||
| 421 | Word (EventInternGenString)(size_t len, const char *label) | 422 | Word (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 |