|
@@ -11,18 +11,14 @@ public link_free_chunk(), unlink_free_chunk();
|
|
|
public mallink *first_present(), *search_free_list();
|
|
|
|
|
|
#ifdef STORE
|
|
|
-#define in_store(ml) ((size_type)_log_prev_of(ml) & 01)
|
|
|
+#define in_store(ml) ((size_type)_phys_prev_of(ml) & STORE_BIT)
|
|
|
#define set_store(ml, e) \
|
|
|
- (_log_prev_of(ml) = (mallink *) \
|
|
|
- ((e) ? (size_type) _log_prev_of(ml) | 01 : \
|
|
|
- (size_type) _log_prev_of(ml) & ~01))
|
|
|
-#define log_prev_of(ml) (mallink *)((size_type)_log_prev_of(ml) & ~01)
|
|
|
-#define set_log_prev(ml,e) \
|
|
|
- (_log_prev_of(ml) = (mallink *)((char *)e + in_store(ml)))
|
|
|
-#else
|
|
|
+ (_phys_prev_of(ml) = (mallink *) \
|
|
|
+ ((e) ? (size_type) _phys_prev_of(ml) | STORE_BIT : \
|
|
|
+ (size_type) _phys_prev_of(ml) & ~STORE_BIT))
|
|
|
+#endif
|
|
|
#define set_log_prev(ml,e) (_log_prev_of(ml) = (e))
|
|
|
#define log_prev_of(ml) (mallink *) (_log_prev_of(ml))
|
|
|
-#endif
|
|
|
|
|
|
#define set_log_next(ml,e) (_log_next_of(ml) = (e))
|
|
|
#define log_next_of(ml) (mallink *) (_log_next_of(ml))
|