summaryrefslogtreecommitdiff
path: root/allchblk.c
diff options
context:
space:
mode:
authorIvan Maidanski <ivmai@mail.ru>2012-03-25 08:32:05 +0200
committerIvan Maidanski <ivmai@mail.ru>2012-03-25 09:29:19 +0200
commitc1d271b8c1ea4dce12ecdf3ff0caece68be0ddf8 (patch)
tree4b6e2a209333caad7456ab239ad9f1f2e8e37c24 /allchblk.c
parente5ff6961fc86e00daf32edb8eb6edd3e12435e5e (diff)
Fix visibility of some GC internal symbols used by GCJ
(Includes reverting part of commits 68b9f27, 91d5df5, b2345fb) * allchblk.c (GC_hblkfreelist, GC_free_bytes): Do not define array as STATIC again but only if GC_GCJ_SUPPORT (for GNU GCJ client). * blacklst.c (GC_is_black_listed): Do not define as GC_INNER again (for GNU GCJ client). * include/private/gc_priv.h (GC_is_black_listed): Likewise. * include/private/gc_priv.h (GC_hblkfreelist): Restore removed declaration (but only if GC_GCJ_SUPPORT). * reclaim.c (GC_n_set_marks): Do not define as STATIC again (for GCJ); update the comment.
Diffstat (limited to 'allchblk.c')
-rw-r--r--allchblk.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/allchblk.c b/allchblk.c
index a404fda..fe10b03 100644
--- a/allchblk.c
+++ b/allchblk.c
@@ -48,16 +48,23 @@
# define N_HBLK_FLS (HUGE_THRESHOLD - UNIQUE_THRESHOLD)/FL_COMPRESSION \
+ UNIQUE_THRESHOLD
-STATIC struct hblk * GC_hblkfreelist[N_HBLK_FLS+1] = { 0 };
+#ifndef GC_GCJ_SUPPORT
+ STATIC
+#endif
+ struct hblk * GC_hblkfreelist[N_HBLK_FLS+1] = { 0 };
/* List of completely empty heap blocks */
/* Linked through hb_next field of */
/* header structure associated with */
- /* block. */
+ /* block. Remains externally visible */
+ /* as used by GNU GCJ currently. */
#ifndef USE_MUNMAP
- STATIC word GC_free_bytes[N_HBLK_FLS+1] = { 0 };
- /* Number of free bytes on each list. */
+#ifndef GC_GCJ_SUPPORT
+ STATIC
+#endif
+ word GC_free_bytes[N_HBLK_FLS+1] = { 0 };
+ /* Number of free bytes on each list. Remains visible to GCJ. */
/* Return the largest n such that */
/* Is GC_large_allocd_bytes + the number of free bytes on lists */