diff options
| author | Richard Brooksby | 2012-09-12 20:00:04 +0100 |
|---|---|---|
| committer | Richard Brooksby | 2012-09-12 20:00:04 +0100 |
| commit | 50c50c895b9c98ca0a21fe5edc86ed83d5c5ada8 (patch) | |
| tree | 8e5716fc014d4e6f3b4b711a5b8dd83e647cf1e9 /mps/code | |
| parent | 513aabb046ca6417eea1355428d212e1f3a1573d (diff) | |
| download | emacs-50c50c895b9c98ca0a21fe5edc86ed83d5c5ada8.tar.gz emacs-50c50c895b9c98ca0a21fe5edc86ed83d5c5ada8.zip | |
Eliminating interface puns that break the strict aliasing rule. the last of the structure puns and casts, i think.
Copied from Perforce
Change: 179453
ServerID: perforce.ravenbrook.com
Diffstat (limited to 'mps/code')
| -rw-r--r-- | mps/code/chain.h | 2 | ||||
| -rw-r--r-- | mps/code/mpmst.h | 10 | ||||
| -rw-r--r-- | mps/code/mpmtypes.h | 12 | ||||
| -rw-r--r-- | mps/code/mpsi.c | 71 |
4 files changed, 36 insertions, 59 deletions
diff --git a/mps/code/chain.h b/mps/code/chain.h index 785c25e2349..0d2be1de068 100644 --- a/mps/code/chain.h +++ b/mps/code/chain.h | |||
| @@ -64,7 +64,7 @@ typedef struct PoolGenStruct { | |||
| 64 | 64 | ||
| 65 | #define ChainSig ((Sig)0x519C8A14) /* SIGnature CHAIN */ | 65 | #define ChainSig ((Sig)0x519C8A14) /* SIGnature CHAIN */ |
| 66 | 66 | ||
| 67 | typedef struct ChainStruct { | 67 | typedef struct mps_chain_s { |
| 68 | Sig sig; | 68 | Sig sig; |
| 69 | Arena arena; | 69 | Arena arena; |
| 70 | RingStruct chainRing; /* list of chains in the arena */ | 70 | RingStruct chainRing; /* list of chains in the arena */ |
diff --git a/mps/code/mpmst.h b/mps/code/mpmst.h index 1cd8a77a7ec..332d32084e1 100644 --- a/mps/code/mpmst.h +++ b/mps/code/mpmst.h | |||
| @@ -46,7 +46,7 @@ | |||
| 46 | 46 | ||
| 47 | #define PoolClassSig ((Sig)0x519C7A55) /* SIGnature pool CLASS */ | 47 | #define PoolClassSig ((Sig)0x519C7A55) /* SIGnature pool CLASS */ |
| 48 | 48 | ||
| 49 | typedef struct PoolClassStruct { | 49 | typedef struct mps_class_s { |
| 50 | ProtocolClassStruct protocol; | 50 | ProtocolClassStruct protocol; |
| 51 | const char *name; /* class name string */ | 51 | const char *name; /* class name string */ |
| 52 | size_t size; /* size of outer structure */ | 52 | size_t size; /* size of outer structure */ |
| @@ -93,7 +93,7 @@ typedef struct PoolClassStruct { | |||
| 93 | 93 | ||
| 94 | #define PoolSig ((Sig)0x519B0019) /* SIGnature POOL */ | 94 | #define PoolSig ((Sig)0x519B0019) /* SIGnature POOL */ |
| 95 | 95 | ||
| 96 | typedef struct PoolStruct { /* generic structure */ | 96 | typedef struct mps_pool_s { /* generic structure */ |
| 97 | Sig sig; /* <design/sig/> */ | 97 | Sig sig; /* <design/sig/> */ |
| 98 | Serial serial; /* from arena->poolSerial */ | 98 | Serial serial; /* from arena->poolSerial */ |
| 99 | PoolClass class; /* pool class structure */ | 99 | PoolClass class; /* pool class structure */ |
| @@ -218,7 +218,7 @@ typedef struct MessageClassStruct { | |||
| 218 | * | 218 | * |
| 219 | * See <design/message/#message.struct>. */ | 219 | * See <design/message/#message.struct>. */ |
| 220 | 220 | ||
| 221 | typedef struct MessageStruct { | 221 | typedef struct mps_message_s { |
| 222 | Sig sig; /* <design/sig/> */ | 222 | Sig sig; /* <design/sig/> */ |
| 223 | Arena arena; /* owning arena */ | 223 | Arena arena; /* owning arena */ |
| 224 | MessageClass class; /* Message Class Structure */ | 224 | MessageClass class; /* Message Class Structure */ |
| @@ -399,7 +399,7 @@ typedef struct SegBufStruct { | |||
| 399 | 399 | ||
| 400 | #define FormatSig ((Sig)0x519F63A2) /* Signature FoRMAT */ | 400 | #define FormatSig ((Sig)0x519F63A2) /* Signature FoRMAT */ |
| 401 | 401 | ||
| 402 | typedef struct FormatStruct { | 402 | typedef struct mps_fmt_s { |
| 403 | Sig sig; | 403 | Sig sig; |
| 404 | Serial serial; /* from arena->formatSerial */ | 404 | Serial serial; /* from arena->formatSerial */ |
| 405 | FormatVariety variety; /* format variety (e.g. A) */ | 405 | FormatVariety variety; /* format variety (e.g. A) */ |
| @@ -530,7 +530,7 @@ typedef struct ChunkCacheEntryStruct { | |||
| 530 | 530 | ||
| 531 | #define ArenaClassSig ((Sig)0x519A6C1A) /* SIGnature ARena CLAss */ | 531 | #define ArenaClassSig ((Sig)0x519A6C1A) /* SIGnature ARena CLAss */ |
| 532 | 532 | ||
| 533 | typedef struct ArenaClassStruct { | 533 | typedef struct mps_arena_class_s { |
| 534 | ProtocolClassStruct protocol; | 534 | ProtocolClassStruct protocol; |
| 535 | char *name; /* class name string */ | 535 | char *name; /* class name string */ |
| 536 | size_t size; /* size of outer structure */ | 536 | size_t size; /* size of outer structure */ |
diff --git a/mps/code/mpmtypes.h b/mps/code/mpmtypes.h index 890522b804e..9246d10e67d 100644 --- a/mps/code/mpmtypes.h +++ b/mps/code/mpmtypes.h | |||
| @@ -67,10 +67,10 @@ typedef BufferClass SegBufClass; /* <design/buffer/> */ | |||
| 67 | typedef BufferClass RankBufClass; /* <design/buffer/> */ | 67 | typedef BufferClass RankBufClass; /* <design/buffer/> */ |
| 68 | typedef unsigned BufferMode; /* <design/buffer/> */ | 68 | typedef unsigned BufferMode; /* <design/buffer/> */ |
| 69 | typedef unsigned FrameState; /* <design/alloc-frame/> */ | 69 | typedef unsigned FrameState; /* <design/alloc-frame/> */ |
| 70 | typedef struct FormatStruct *Format; /* design.mps.format */ | 70 | typedef struct mps_fmt_s *Format; /* design.mps.format */ |
| 71 | typedef struct LockStruct *Lock; /* <code/lock.c>* */ | 71 | typedef struct LockStruct *Lock; /* <code/lock.c>* */ |
| 72 | typedef struct PoolStruct *Pool; /* <design/pool/> */ | 72 | typedef struct mps_pool_s *Pool; /* <design/pool/> */ |
| 73 | typedef struct PoolClassStruct *PoolClass; /* <code/poolclas.c> */ | 73 | typedef struct mps_class_s *PoolClass; /* <code/poolclas.c> */ |
| 74 | typedef PoolClass AbstractPoolClass; /* <code/poolabs.c> */ | 74 | typedef PoolClass AbstractPoolClass; /* <code/poolabs.c> */ |
| 75 | typedef PoolClass AbstractAllocFreePoolClass; /* <code/poolabs.c> */ | 75 | typedef PoolClass AbstractAllocFreePoolClass; /* <code/poolabs.c> */ |
| 76 | typedef PoolClass AbstractBufferPoolClass; /* <code/poolabs.c> */ | 76 | typedef PoolClass AbstractBufferPoolClass; /* <code/poolabs.c> */ |
| @@ -79,7 +79,7 @@ typedef PoolClass AbstractScanPoolClass; /* <code/poolabs.c> */ | |||
| 79 | typedef PoolClass AbstractCollectPoolClass; /* <code/poolabs.c> */ | 79 | typedef PoolClass AbstractCollectPoolClass; /* <code/poolabs.c> */ |
| 80 | typedef struct TraceStruct *Trace; /* <design/trace/> */ | 80 | typedef struct TraceStruct *Trace; /* <design/trace/> */ |
| 81 | typedef struct ScanStateStruct *ScanState; /* <design/trace/> */ | 81 | typedef struct ScanStateStruct *ScanState; /* <design/trace/> */ |
| 82 | typedef struct ChainStruct *Chain; /* <design/trace/> */ | 82 | typedef struct mps_chain_s *Chain; /* <design/trace/> */ |
| 83 | typedef struct TractStruct *Tract; /* <design/arena/> */ | 83 | typedef struct TractStruct *Tract; /* <design/arena/> */ |
| 84 | typedef struct ChunkStruct *Chunk; /* <code/tract.c> */ | 84 | typedef struct ChunkStruct *Chunk; /* <code/tract.c> */ |
| 85 | typedef struct ChunkCacheEntryStruct *ChunkCacheEntry; /* <code/tract.c> */ | 85 | typedef struct ChunkCacheEntryStruct *ChunkCacheEntry; /* <code/tract.c> */ |
| @@ -90,7 +90,7 @@ typedef struct SegClassStruct *SegClass; /* <code/seg.c> */ | |||
| 90 | typedef SegClass GCSegClass; /* <code/seg.c> */ | 90 | typedef SegClass GCSegClass; /* <code/seg.c> */ |
| 91 | typedef struct SegPrefStruct *SegPref; /* design.mps.pref, <code/locus.c> */ | 91 | typedef struct SegPrefStruct *SegPref; /* design.mps.pref, <code/locus.c> */ |
| 92 | typedef int SegPrefKind; /* design.mps.pref, <code/locus.c> */ | 92 | typedef int SegPrefKind; /* design.mps.pref, <code/locus.c> */ |
| 93 | typedef struct ArenaClassStruct *ArenaClass; /* <design/arena/> */ | 93 | typedef struct mps_arena_class_s *ArenaClass; /* <design/arena/> */ |
| 94 | typedef ArenaClass AbstractArenaClass; /* <code/arena.c> */ | 94 | typedef ArenaClass AbstractArenaClass; /* <code/arena.c> */ |
| 95 | typedef struct mps_arena_s *Arena; /* <design/arena/> */ | 95 | typedef struct mps_arena_s *Arena; /* <design/arena/> */ |
| 96 | typedef struct GlobalsStruct *Globals; /* <design/arena/> */ | 96 | typedef struct GlobalsStruct *Globals; /* <design/arena/> */ |
| @@ -223,7 +223,7 @@ typedef PoolDebugMixin (*PoolDebugMixinMethod)(Pool pool); | |||
| 223 | */ | 223 | */ |
| 224 | 224 | ||
| 225 | typedef unsigned MessageType; | 225 | typedef unsigned MessageType; |
| 226 | typedef struct MessageStruct *Message; | 226 | typedef struct mps_message_s *Message; |
| 227 | typedef struct MessageClassStruct *MessageClass; | 227 | typedef struct MessageClassStruct *MessageClass; |
| 228 | 228 | ||
| 229 | /* Message*Method -- <design/message/> */ | 229 | /* Message*Method -- <design/message/> */ |
diff --git a/mps/code/mpsi.c b/mps/code/mpsi.c index 711f5807254..15bc692ee00 100644 --- a/mps/code/mpsi.c +++ b/mps/code/mpsi.c | |||
| @@ -324,7 +324,7 @@ mps_res_t mps_arena_create(mps_arena_t *mps_arena_o, | |||
| 324 | /* mps_arena_create_v -- create an arena object */ | 324 | /* mps_arena_create_v -- create an arena object */ |
| 325 | 325 | ||
| 326 | mps_res_t mps_arena_create_v(mps_arena_t *mps_arena_o, | 326 | mps_res_t mps_arena_create_v(mps_arena_t *mps_arena_o, |
| 327 | mps_arena_class_t mps_arena_class, va_list args) | 327 | mps_arena_class_t arena_class, va_list args) |
| 328 | { | 328 | { |
| 329 | Arena arena; | 329 | Arena arena; |
| 330 | Res res; | 330 | Res res; |
| @@ -335,7 +335,7 @@ mps_res_t mps_arena_create_v(mps_arena_t *mps_arena_o, | |||
| 335 | 335 | ||
| 336 | AVER(mps_arena_o != NULL); | 336 | AVER(mps_arena_o != NULL); |
| 337 | 337 | ||
| 338 | res = ArenaCreateV(&arena, (ArenaClass)mps_arena_class, args); | 338 | res = ArenaCreateV(&arena, arena_class, args); |
| 339 | if (res != ResOK) | 339 | if (res != ResOK) |
| 340 | return res; | 340 | return res; |
| 341 | 341 | ||
| @@ -584,9 +584,8 @@ mps_res_t mps_fmt_create_fixed(mps_fmt_t *mps_fmt_o, | |||
| 584 | 584 | ||
| 585 | /* mps_fmt_destroy -- destroy a format object */ | 585 | /* mps_fmt_destroy -- destroy a format object */ |
| 586 | 586 | ||
| 587 | void mps_fmt_destroy(mps_fmt_t mps_fmt) | 587 | void mps_fmt_destroy(mps_fmt_t format) |
| 588 | { | 588 | { |
| 589 | Format format = (Format)mps_fmt; | ||
| 590 | Arena arena; | 589 | Arena arena; |
| 591 | 590 | ||
| 592 | AVER(TESTT(Format, format)); | 591 | AVER(TESTT(Format, format)); |
| @@ -612,10 +611,9 @@ mps_res_t mps_pool_create(mps_pool_t *mps_pool_o, mps_arena_t arena, | |||
| 612 | } | 611 | } |
| 613 | 612 | ||
| 614 | mps_res_t mps_pool_create_v(mps_pool_t *mps_pool_o, mps_arena_t arena, | 613 | mps_res_t mps_pool_create_v(mps_pool_t *mps_pool_o, mps_arena_t arena, |
| 615 | mps_class_t mps_class, va_list args) | 614 | mps_class_t class, va_list args) |
| 616 | { | 615 | { |
| 617 | Pool pool; | 616 | Pool pool; |
| 618 | PoolClass class = (PoolClass)mps_class; | ||
| 619 | Res res; | 617 | Res res; |
| 620 | 618 | ||
| 621 | ArenaEnter(arena); | 619 | ArenaEnter(arena); |
| @@ -633,9 +631,8 @@ mps_res_t mps_pool_create_v(mps_pool_t *mps_pool_o, mps_arena_t arena, | |||
| 633 | return res; | 631 | return res; |
| 634 | } | 632 | } |
| 635 | 633 | ||
| 636 | void mps_pool_destroy(mps_pool_t mps_pool) | 634 | void mps_pool_destroy(mps_pool_t pool) |
| 637 | { | 635 | { |
| 638 | Pool pool = (Pool)mps_pool; | ||
| 639 | Arena arena; | 636 | Arena arena; |
| 640 | 637 | ||
| 641 | AVER(TESTT(Pool, pool)); | 638 | AVER(TESTT(Pool, pool)); |
| @@ -649,9 +646,8 @@ void mps_pool_destroy(mps_pool_t mps_pool) | |||
| 649 | } | 646 | } |
| 650 | 647 | ||
| 651 | 648 | ||
| 652 | mps_res_t mps_alloc(mps_addr_t *p_o, mps_pool_t mps_pool, size_t size, ...) | 649 | mps_res_t mps_alloc(mps_addr_t *p_o, mps_pool_t pool, size_t size, ...) |
| 653 | { | 650 | { |
| 654 | Pool pool = (Pool)mps_pool; | ||
| 655 | Arena arena; | 651 | Arena arena; |
| 656 | Addr p; | 652 | Addr p; |
| 657 | Res res; | 653 | Res res; |
| @@ -693,9 +689,8 @@ mps_res_t mps_alloc_v(mps_addr_t *p_o, mps_pool_t mps_pool, size_t size, | |||
| 693 | } | 689 | } |
| 694 | 690 | ||
| 695 | 691 | ||
| 696 | void mps_free(mps_pool_t mps_pool, mps_addr_t p, size_t size) | 692 | void mps_free(mps_pool_t pool, mps_addr_t p, size_t size) |
| 697 | { | 693 | { |
| 698 | Pool pool = (Pool)mps_pool; | ||
| 699 | Arena arena; | 694 | Arena arena; |
| 700 | 695 | ||
| 701 | AVER(TESTT(Pool, pool)); | 696 | AVER(TESTT(Pool, pool)); |
| @@ -716,9 +711,8 @@ void mps_free(mps_pool_t mps_pool, mps_addr_t p, size_t size) | |||
| 716 | 711 | ||
| 717 | /* mps_ap_create -- create an allocation point */ | 712 | /* mps_ap_create -- create an allocation point */ |
| 718 | 713 | ||
| 719 | mps_res_t mps_ap_create(mps_ap_t *mps_ap_o, mps_pool_t mps_pool, ...) | 714 | mps_res_t mps_ap_create(mps_ap_t *mps_ap_o, mps_pool_t pool, ...) |
| 720 | { | 715 | { |
| 721 | Pool pool = (Pool)mps_pool; | ||
| 722 | Arena arena; | 716 | Arena arena; |
| 723 | Buffer buf; | 717 | Buffer buf; |
| 724 | BufferClass bufclass; | 718 | BufferClass bufclass; |
| @@ -733,7 +727,7 @@ mps_res_t mps_ap_create(mps_ap_t *mps_ap_o, mps_pool_t mps_pool, ...) | |||
| 733 | 727 | ||
| 734 | AVERT(Pool, pool); | 728 | AVERT(Pool, pool); |
| 735 | 729 | ||
| 736 | va_start(args, mps_pool); | 730 | va_start(args, pool); |
| 737 | bufclass = PoolDefaultBufferClass(pool); | 731 | bufclass = PoolDefaultBufferClass(pool); |
| 738 | res = BufferCreateV(&buf, bufclass, pool, TRUE, args); | 732 | res = BufferCreateV(&buf, bufclass, pool, TRUE, args); |
| 739 | va_end(args); | 733 | va_end(args); |
| @@ -749,10 +743,9 @@ mps_res_t mps_ap_create(mps_ap_t *mps_ap_o, mps_pool_t mps_pool, ...) | |||
| 749 | 743 | ||
| 750 | /* mps_ap_create_v -- create an allocation point, with varargs */ | 744 | /* mps_ap_create_v -- create an allocation point, with varargs */ |
| 751 | 745 | ||
| 752 | mps_res_t mps_ap_create_v(mps_ap_t *mps_ap_o, mps_pool_t mps_pool, | 746 | mps_res_t mps_ap_create_v(mps_ap_t *mps_ap_o, mps_pool_t pool, |
| 753 | va_list args) | 747 | va_list args) |
| 754 | { | 748 | { |
| 755 | Pool pool = (Pool)mps_pool; | ||
| 756 | Arena arena; | 749 | Arena arena; |
| 757 | Buffer buf; | 750 | Buffer buf; |
| 758 | BufferClass bufclass; | 751 | BufferClass bufclass; |
| @@ -1043,12 +1036,10 @@ mps_bool_t mps_ap_trip(mps_ap_t mps_ap, mps_addr_t p, size_t size) | |||
| 1043 | 1036 | ||
| 1044 | /* mps_sac_create -- create an SAC object */ | 1037 | /* mps_sac_create -- create an SAC object */ |
| 1045 | 1038 | ||
| 1046 | mps_res_t mps_sac_create(mps_sac_t *mps_sac_o, mps_pool_t mps_pool, | 1039 | mps_res_t mps_sac_create(mps_sac_t *mps_sac_o, mps_pool_t pool, |
| 1047 | size_t classes_count, mps_sac_classes_s *mps_classes) | 1040 | size_t classes_count, mps_sac_classes_s *classes) |
| 1048 | { | 1041 | { |
| 1049 | Pool pool = (Pool)mps_pool; | ||
| 1050 | Arena arena; | 1042 | Arena arena; |
| 1051 | SACClasses classes; | ||
| 1052 | SAC sac; | 1043 | SAC sac; |
| 1053 | Res res; | 1044 | Res res; |
| 1054 | 1045 | ||
| @@ -1058,7 +1049,6 @@ mps_res_t mps_sac_create(mps_sac_t *mps_sac_o, mps_pool_t mps_pool, | |||
| 1058 | 1049 | ||
| 1059 | ArenaEnter(arena); | 1050 | ArenaEnter(arena); |
| 1060 | 1051 | ||
| 1061 | classes = (SACClasses)mps_classes; | ||
| 1062 | res = SACCreate(&sac, pool, (Count)classes_count, classes); | 1052 | res = SACCreate(&sac, pool, (Count)classes_count, classes); |
| 1063 | 1053 | ||
| 1064 | ArenaLeave(arena); | 1054 | ArenaLeave(arena); |
| @@ -1287,11 +1277,10 @@ mps_res_t mps_root_create_fmt(mps_root_t *mps_root_o, mps_arena_t arena, | |||
| 1287 | 1277 | ||
| 1288 | mps_res_t mps_root_create_reg(mps_root_t *mps_root_o, mps_arena_t arena, | 1278 | mps_res_t mps_root_create_reg(mps_root_t *mps_root_o, mps_arena_t arena, |
| 1289 | mps_rank_t mps_rank, mps_rm_t mps_rm, | 1279 | mps_rank_t mps_rank, mps_rm_t mps_rm, |
| 1290 | mps_thr_t mps_thr, mps_reg_scan_t mps_reg_scan, | 1280 | mps_thr_t thread, mps_reg_scan_t mps_reg_scan, |
| 1291 | void *reg_scan_p, size_t mps_size) | 1281 | void *reg_scan_p, size_t mps_size) |
| 1292 | { | 1282 | { |
| 1293 | Rank rank = (Rank)mps_rank; | 1283 | Rank rank = (Rank)mps_rank; |
| 1294 | Thread thread = (Thread)mps_thr; | ||
| 1295 | Root root; | 1284 | Root root; |
| 1296 | Res res; | 1285 | Res res; |
| 1297 | 1286 | ||
| @@ -1321,10 +1310,9 @@ mps_res_t mps_root_create_reg(mps_root_t *mps_root_o, mps_arena_t arena, | |||
| 1321 | * See .reg-scan. */ | 1310 | * See .reg-scan. */ |
| 1322 | 1311 | ||
| 1323 | mps_res_t mps_stack_scan_ambig(mps_ss_t mps_ss, | 1312 | mps_res_t mps_stack_scan_ambig(mps_ss_t mps_ss, |
| 1324 | mps_thr_t mps_thr, void *p, size_t s) | 1313 | mps_thr_t thread, void *p, size_t s) |
| 1325 | { | 1314 | { |
| 1326 | ScanState ss = PARENT(ScanStateStruct, ss_s, mps_ss); | 1315 | ScanState ss = PARENT(ScanStateStruct, ss_s, mps_ss); |
| 1327 | Thread thread = (Thread)mps_thr; | ||
| 1328 | UNUSED(s); | 1316 | UNUSED(s); |
| 1329 | return ThreadScan(ss, thread, p); | 1317 | return ThreadScan(ss, thread, p); |
| 1330 | } | 1318 | } |
| @@ -1376,9 +1364,8 @@ mps_res_t mps_thread_reg(mps_thr_t *mps_thr_o, mps_arena_t arena) | |||
| 1376 | return MPS_RES_OK; | 1364 | return MPS_RES_OK; |
| 1377 | } | 1365 | } |
| 1378 | 1366 | ||
| 1379 | void mps_thread_dereg(mps_thr_t mps_thr) | 1367 | void mps_thread_dereg(mps_thr_t thread) |
| 1380 | { | 1368 | { |
| 1381 | Thread thread = (Thread)mps_thr; | ||
| 1382 | Arena arena; | 1369 | Arena arena; |
| 1383 | 1370 | ||
| 1384 | AVER(ThreadCheckSimple(thread)); | 1371 | AVER(ThreadCheckSimple(thread)); |
| @@ -1561,10 +1548,8 @@ mps_bool_t mps_message_get(mps_message_t *mps_message_return, | |||
| 1561 | } | 1548 | } |
| 1562 | 1549 | ||
| 1563 | void mps_message_discard(mps_arena_t arena, | 1550 | void mps_message_discard(mps_arena_t arena, |
| 1564 | mps_message_t mps_message) | 1551 | mps_message_t message) |
| 1565 | { | 1552 | { |
| 1566 | Message message = (Message)mps_message; | ||
| 1567 | |||
| 1568 | ArenaEnter(arena); | 1553 | ArenaEnter(arena); |
| 1569 | 1554 | ||
| 1570 | MessageDiscard(arena, message); | 1555 | MessageDiscard(arena, message); |
| @@ -1578,9 +1563,8 @@ void mps_message_discard(mps_arena_t arena, | |||
| 1578 | /* -- All Message Types */ | 1563 | /* -- All Message Types */ |
| 1579 | 1564 | ||
| 1580 | mps_message_type_t mps_message_type(mps_arena_t arena, | 1565 | mps_message_type_t mps_message_type(mps_arena_t arena, |
| 1581 | mps_message_t mps_message) | 1566 | mps_message_t message) |
| 1582 | { | 1567 | { |
| 1583 | Message message = (Message)mps_message; | ||
| 1584 | MessageType type; | 1568 | MessageType type; |
| 1585 | 1569 | ||
| 1586 | ArenaEnter(arena); | 1570 | ArenaEnter(arena); |
| @@ -1593,9 +1577,8 @@ mps_message_type_t mps_message_type(mps_arena_t arena, | |||
| 1593 | } | 1577 | } |
| 1594 | 1578 | ||
| 1595 | mps_clock_t mps_message_clock(mps_arena_t arena, | 1579 | mps_clock_t mps_message_clock(mps_arena_t arena, |
| 1596 | mps_message_t mps_message) | 1580 | mps_message_t message) |
| 1597 | { | 1581 | { |
| 1598 | Message message = (Message)mps_message; | ||
| 1599 | Clock postedClock; | 1582 | Clock postedClock; |
| 1600 | 1583 | ||
| 1601 | ArenaEnter(arena); | 1584 | ArenaEnter(arena); |
| @@ -1612,9 +1595,8 @@ mps_clock_t mps_message_clock(mps_arena_t arena, | |||
| 1612 | 1595 | ||
| 1613 | void mps_message_finalization_ref(mps_addr_t *mps_addr_return, | 1596 | void mps_message_finalization_ref(mps_addr_t *mps_addr_return, |
| 1614 | mps_arena_t arena, | 1597 | mps_arena_t arena, |
| 1615 | mps_message_t mps_message) | 1598 | mps_message_t message) |
| 1616 | { | 1599 | { |
| 1617 | Message message = (Message)mps_message; | ||
| 1618 | Ref ref; | 1600 | Ref ref; |
| 1619 | 1601 | ||
| 1620 | AVER(mps_addr_return != NULL); | 1602 | AVER(mps_addr_return != NULL); |
| @@ -1631,9 +1613,8 @@ void mps_message_finalization_ref(mps_addr_t *mps_addr_return, | |||
| 1631 | /* -- mps_message_type_gc */ | 1613 | /* -- mps_message_type_gc */ |
| 1632 | 1614 | ||
| 1633 | size_t mps_message_gc_live_size(mps_arena_t arena, | 1615 | size_t mps_message_gc_live_size(mps_arena_t arena, |
| 1634 | mps_message_t mps_message) | 1616 | mps_message_t message) |
| 1635 | { | 1617 | { |
| 1636 | Message message = (Message)mps_message; | ||
| 1637 | Size size; | 1618 | Size size; |
| 1638 | 1619 | ||
| 1639 | ArenaEnter(arena); | 1620 | ArenaEnter(arena); |
| @@ -1646,9 +1627,8 @@ size_t mps_message_gc_live_size(mps_arena_t arena, | |||
| 1646 | } | 1627 | } |
| 1647 | 1628 | ||
| 1648 | size_t mps_message_gc_condemned_size(mps_arena_t arena, | 1629 | size_t mps_message_gc_condemned_size(mps_arena_t arena, |
| 1649 | mps_message_t mps_message) | 1630 | mps_message_t message) |
| 1650 | { | 1631 | { |
| 1651 | Message message = (Message)mps_message; | ||
| 1652 | Size size; | 1632 | Size size; |
| 1653 | 1633 | ||
| 1654 | ArenaEnter(arena); | 1634 | ArenaEnter(arena); |
| @@ -1661,9 +1641,8 @@ size_t mps_message_gc_condemned_size(mps_arena_t arena, | |||
| 1661 | } | 1641 | } |
| 1662 | 1642 | ||
| 1663 | size_t mps_message_gc_not_condemned_size(mps_arena_t arena, | 1643 | size_t mps_message_gc_not_condemned_size(mps_arena_t arena, |
| 1664 | mps_message_t mps_message) | 1644 | mps_message_t message) |
| 1665 | { | 1645 | { |
| 1666 | Message message = (Message)mps_message; | ||
| 1667 | Size size; | 1646 | Size size; |
| 1668 | 1647 | ||
| 1669 | ArenaEnter(arena); | 1648 | ArenaEnter(arena); |
| @@ -1678,10 +1657,9 @@ size_t mps_message_gc_not_condemned_size(mps_arena_t arena, | |||
| 1678 | /* -- mps_message_type_gc_start */ | 1657 | /* -- mps_message_type_gc_start */ |
| 1679 | 1658 | ||
| 1680 | const char *mps_message_gc_start_why(mps_arena_t arena, | 1659 | const char *mps_message_gc_start_why(mps_arena_t arena, |
| 1681 | mps_message_t mps_message) | 1660 | mps_message_t message) |
| 1682 | { | 1661 | { |
| 1683 | const char *s; | 1662 | const char *s; |
| 1684 | Message message = (Message)mps_message; | ||
| 1685 | 1663 | ||
| 1686 | ArenaEnter(arena); | 1664 | ArenaEnter(arena); |
| 1687 | 1665 | ||
| @@ -1885,10 +1863,9 @@ mps_res_t mps_chain_create(mps_chain_t *chain_o, mps_arena_t arena, | |||
| 1885 | 1863 | ||
| 1886 | /* mps_chain_destroy -- destroy a chain */ | 1864 | /* mps_chain_destroy -- destroy a chain */ |
| 1887 | 1865 | ||
| 1888 | void mps_chain_destroy(mps_chain_t mps_chain) | 1866 | void mps_chain_destroy(mps_chain_t chain) |
| 1889 | { | 1867 | { |
| 1890 | Arena arena; | 1868 | Arena arena; |
| 1891 | Chain chain = (Chain)mps_chain; | ||
| 1892 | 1869 | ||
| 1893 | AVER(TESTT(Chain, chain)); | 1870 | AVER(TESTT(Chain, chain)); |
| 1894 | arena = chain->arena; | 1871 | arena = chain->arena; |