1 | /* Null garbage collection for the GNU compiler. |
2 | Copyright (C) 1998-2023 Free Software Foundation, Inc. |
3 | |
4 | This file is part of GCC. |
5 | |
6 | GCC is free software; you can redistribute it and/or modify it |
7 | under the terms of the GNU General Public License as published by |
8 | the Free Software Foundation; either version 3, or (at your option) |
9 | any later version. |
10 | |
11 | GCC is distributed in the hope that it will be useful, but WITHOUT |
12 | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY |
13 | or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public |
14 | License for more details. |
15 | |
16 | You should have received a copy of the GNU General Public License |
17 | along with GCC; see the file COPYING3. If not see |
18 | <http://www.gnu.org/licenses/>. */ |
19 | |
20 | /* This version is used by the gen* programs and certain language-specific |
21 | targets (such as java), where we don't really need GC at all. |
22 | This prevents problems with pulling in all the tree stuff. */ |
23 | |
24 | #ifdef GENERATOR_FILE |
25 | #include "bconfig.h" |
26 | #else |
27 | #include "config.h" |
28 | #endif |
29 | |
30 | #include "system.h" |
31 | #include "coretypes.h" |
32 | #include "hash-table.h" |
33 | |
34 | /* For a given size of memory requested for allocation, return the |
35 | actual size that is going to be allocated. */ |
36 | |
37 | size_t |
38 | ggc_round_alloc_size (size_t requested_size) |
39 | { |
40 | return requested_size; |
41 | } |
42 | |
43 | void * |
44 | ggc_internal_alloc (size_t size, void (*f)(void *), size_t, size_t |
45 | MEM_STAT_DECL) |
46 | { |
47 | gcc_assert (!f); // ggc-none doesn't support finalizers |
48 | return xmalloc (size); |
49 | } |
50 | |
51 | void * |
52 | ggc_internal_cleared_alloc (size_t size, void (*f)(void *), size_t, size_t |
53 | MEM_STAT_DECL) |
54 | { |
55 | gcc_assert (!f); // ggc-none doesn't support finalizers |
56 | return xcalloc (size, 1); |
57 | } |
58 | |
59 | void * |
60 | ggc_realloc_stat (void *x, size_t size MEM_STAT_DECL) |
61 | { |
62 | return xrealloc (x, size); |
63 | } |
64 | |
65 | void |
66 | ggc_free (void *p) |
67 | { |
68 | free (ptr: p); |
69 | } |
70 | |
71 | void |
72 | ggc_grow (void) |
73 | { |
74 | } |
75 | |
76 | void |
77 | ggc_trim (void) |
78 | { |
79 | } |
80 | |