OSDN Git Service

In gcc/objc/:
[pf3gnuchains/gcc-fork.git] / gcc / ggc-none.c
1 /* Null garbage collection for the GNU compiler.
2    Copyright (C) 1998, 1999, 2000, 2003, 2004, 2005, 2007, 2010
3    Free Software Foundation, Inc.
4
5    This file is part of GCC.
6
7    GCC is free software; you can redistribute it and/or modify it
8    under the terms of the GNU General Public License as published by
9    the Free Software Foundation; either version 3, or (at your option)
10    any later version.
11
12    GCC is distributed in the hope that it will be useful, but WITHOUT
13    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
15    License for more details.
16
17    You should have received a copy of the GNU General Public License
18    along with GCC; see the file COPYING3.  If not see
19    <http://www.gnu.org/licenses/>.  */
20
21 /* This version is used by the gen* programs and certain language-specific
22    targets (such as java), where we don't really need GC at all.
23    This prevents problems with pulling in all the tree stuff.  */
24
25 #ifdef GENERATOR_FILE
26 #include "bconfig.h"
27 #else
28 #include "config.h"
29 #endif
30
31 #include "system.h"
32 #include "coretypes.h"
33 #include "ggc.h"
34
35 void *
36 ggc_alloc_typed_stat (enum gt_types_enum ARG_UNUSED (gte), size_t size
37                       MEM_STAT_DECL)
38 {
39   return xmalloc (size);
40 }
41
42 void *
43 ggc_internal_alloc_stat (size_t size MEM_STAT_DECL)
44 {
45   return xmalloc (size);
46 }
47
48 void *
49 ggc_internal_cleared_alloc_stat (size_t size MEM_STAT_DECL)
50 {
51   return xcalloc (size, 1);
52 }
53
54 void *
55 ggc_realloc_stat (void *x, size_t size MEM_STAT_DECL)
56 {
57   return xrealloc (x, size);
58 }
59
60 void
61 ggc_free (void *p)
62 {
63   free (p);
64 }
65
66 struct alloc_zone
67 {
68   int dummy;
69 };
70
71 struct alloc_zone rtl_zone;
72 struct alloc_zone tree_zone;
73 struct alloc_zone tree_id_zone;
74
75 #if defined (GGC_ZONE) && !defined (GENERATOR_FILE)
76
77 void *
78 ggc_internal_alloc_zone_stat (size_t size,
79                               struct alloc_zone * ARG_UNUSED(z) MEM_STAT_DECL)
80 {
81     return xmalloc (size);
82 }
83
84 void *
85 ggc_internal_cleared_alloc_zone_stat (size_t size,
86                                       struct alloc_zone * ARG_UNUSED(z)
87                                       MEM_STAT_DECL)
88 {
89     return xcalloc (size, 1);
90 }
91
92 #endif