From e71fa3b313b7afccbfe7fe6214765015796ac0b5 Mon Sep 17 00:00:00 2001 From: Tony Mann Date: Tue, 11 Jan 2000 11:49:48 +0000 Subject: [PATCH] Change.mps.dylan.kinglet.160189 Add events for segment splitting and merging Copied from Perforce Change: 21060 ServerID: perforce.ravenbrook.com --- mps/src/eventcom.h | 4 +++- mps/src/eventdef.h | 4 +++- mps/src/eventgen.h | 57 ++++++++++++++++++++++++++++++++++------------ 3 files changed, 48 insertions(+), 17 deletions(-) diff --git a/mps/src/eventcom.h b/mps/src/eventcom.h index 427afa486c4..89b1fdd72ee 100644 --- a/mps/src/eventcom.h +++ b/mps/src/eventcom.h @@ -1,7 +1,7 @@ /* impl.h.eventcom -- Event Logging Common Definitions * * Copyright (C) 1999. Harlequin Limited. All rights reserved. - * $HopeName: MMsrc!eventcom.h(trunk.17) $ + * $HopeName: MMsrc!eventcom.h(trunk.18) $ * * .readership: MPS developers * .sources: mps.design.telemetry @@ -61,6 +61,8 @@ typedef EventStringStruct *EventString; #define EventArenaFree ((EventType)0xEFA64F6E) /* AReNa FREe */ #define EventSegAlloc ((EventType)0xEF5E9A77) /* SEG ALLoc */ #define EventSegFree ((EventType)0xEF5E9F6E) /* SEG FREe */ +#define EventSegMerge ((EventType)0xEF5E93E6) /* SEG MERge */ +#define EventSegSplit ((EventType)0xEF5E95B7) /* SEG SPLit */ #define EventAMCGenCreate ((EventType)0xEFA3C94C) /* AMC GeN Create */ #define EventAMCGenDestroy ((EventType)0xEFA3C94D) /* AMC GeN Destroy */ #define EventAMCInit ((EventType)0xEFA3C141) /* AMC INIt */ diff --git a/mps/src/eventdef.h b/mps/src/eventdef.h index 2e0b1dcbf62..9e7a6f83772 100644 --- a/mps/src/eventdef.h +++ b/mps/src/eventdef.h @@ -1,6 +1,6 @@ /* impl.h.eventdef -- Event Logging Definitions * - * $HopeName: MMsrc!eventdef.h(trunk.21) $ + * $HopeName: MMsrc!eventdef.h(trunk.22) $ * Copyright (C) 1999. Harlequin Limited. All rights reserved. * * .readership: MPS developers. @@ -139,3 +139,5 @@ RELATION(TraceStatReclaim , 0x0041, TRUE, Trace, PWW) RELATION(ArenaAlloc , 0x0042, TRUE, Arena, PPAWP) RELATION(ArenaFree , 0x0043, TRUE, Arena, PAW) RELATION(ArenaAllocFail , 0x0044, TRUE, Arena, PWP) +RELATION(SegMerge , 0x0045, TRUE, Seg, PPP) +RELATION(SegSplit , 0x0046, TRUE, Seg, PPPA) diff --git a/mps/src/eventgen.h b/mps/src/eventgen.h index d47ec93eba9..67dd85cfaab 100644 --- a/mps/src/eventgen.h +++ b/mps/src/eventgen.h @@ -3,7 +3,7 @@ * $HopeName$ * * DO NOT EDIT THIS FILE! - * This file was generated by MMsrc!eventgen.pl(trunk.10) $ + * This file was generated by MMsrc!eventgen.pl(trunk.11) $ */ #ifdef EVENT @@ -172,6 +172,22 @@ typedef struct { : ((i) == 2) ? (void *)&((event)->ppp.p2) \ : NULL) +typedef struct { + Word code; + Word clock; + void * p0; + void * p1; + void * p2; + Addr a3; +} EventPPPAStruct; + +#define EVENT_PPPA_FIELD_PTR(event, i) \ + (((i) == 0) ? (void *)&((event)->pppa.p0) \ + : ((i) == 1) ? (void *)&((event)->pppa.p1) \ + : ((i) == 2) ? (void *)&((event)->pppa.p2) \ + : ((i) == 3) ? (void *)&((event)->pppa.a3) \ + : NULL) + typedef struct { Word code; Word clock; @@ -436,6 +452,7 @@ typedef union { EventPPAUStruct ppau; EventPPAWPStruct ppawp; EventPPPStruct ppp; + EventPPPAStruct pppa; EventPPPUStruct pppu; EventPPUStruct ppu; EventPPWAWStruct ppwaw; @@ -535,6 +552,14 @@ typedef union { EventMould.ppp.p2 = (_p2); \ EVENT_END(type, PPP, sizeof(EventPPPStruct)) +#define EVENT_PPPA(type, _p0, _p1, _p2, _a3) \ + EVENT_BEGIN(type) \ + EventMould.pppa.p0 = (_p0); \ + EventMould.pppa.p1 = (_p1); \ + EventMould.pppa.p2 = (_p2); \ + EventMould.pppa.a3 = (_a3); \ + EVENT_END(type, PPPA, sizeof(EventPPPAStruct)) + #define EVENT_PPPU(type, _p0, _p1, _p2, _u3) \ EVENT_BEGIN(type) \ EventMould.pppu.p0 = (_p0); \ @@ -676,20 +701,21 @@ typedef union { #define EventFormatPPAU 9 #define EventFormatPPAWP 10 #define EventFormatPPP 11 -#define EventFormatPPPU 12 -#define EventFormatPPU 13 -#define EventFormatPPWAW 14 -#define EventFormatPW 15 -#define EventFormatPWAW 16 -#define EventFormatPWP 17 -#define EventFormatPWW 18 -#define EventFormatPWWWWDD 19 -#define EventFormatPWWWWWWWWW 20 -#define EventFormatPWWWWWWWWWWWW 21 -#define EventFormatUUPA 22 -#define EventFormatUUPP 23 -#define EventFormatUUPPP 24 -#define EventFormatWS 25 +#define EventFormatPPPA 12 +#define EventFormatPPPU 13 +#define EventFormatPPU 14 +#define EventFormatPPWAW 15 +#define EventFormatPW 16 +#define EventFormatPWAW 17 +#define EventFormatPWP 18 +#define EventFormatPWW 19 +#define EventFormatPWWWWDD 20 +#define EventFormatPWWWWWWWWW 21 +#define EventFormatPWWWWWWWWWWWW 22 +#define EventFormatUUPA 23 +#define EventFormatUUPP 24 +#define EventFormatUUPPP 25 +#define EventFormatWS 26 #else /* EVENT not */ @@ -705,6 +731,7 @@ typedef union { #define EVENT_PPAU(type, p0, p1, p2, p3) NOOP #define EVENT_PPAWP(type, p0, p1, p2, p3, p4) NOOP #define EVENT_PPP(type, p0, p1, p2) NOOP +#define EVENT_PPPA(type, p0, p1, p2, p3) NOOP #define EVENT_PPPU(type, p0, p1, p2, p3) NOOP #define EVENT_PPU(type, p0, p1, p2) NOOP #define EVENT_PPWAW(type, p0, p1, p2, p3, p4) NOOP