X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fggc-none.c;h=da906912c9213689e600e4790db0e283d3b3b548;hb=60e21b9a40e681203f50eb0a47a0074e5cb5610e;hp=4e9ef4aacd7b67ebb6e3162345efa1c9a755518c;hpb=f8e15e8ada21fa071f82a53293004e7d7e72f054;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ggc-none.c b/gcc/ggc-none.c index 4e9ef4aacd7..da906912c92 100644 --- a/gcc/ggc-none.c +++ b/gcc/ggc-none.c @@ -1,62 +1,65 @@ /* Null garbage collection for the GNU compiler. - Copyright (C) 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000, 2003, 2004, 2005 + Free Software Foundation, Inc. - This file is part of GNU CC. + This file is part of GCC. - GNU CC is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by + GCC is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. - GNU CC is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. + GCC is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public + License for more details. You should have received a copy of the GNU General Public License - along with GNU CC; see the file COPYING. If not, write to - the Free Software Foundation, 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ + along with GCC; see the file COPYING. If not, write to the Free + Software Foundation, 59 Temple Place - Suite 330, Boston, MA + 02111-1307, USA. */ -/* This version is used by the gen* programs, where we don't really - need GC at all. This prevents problems with pulling in all the - tree stuff. */ - -/* We are used by gengenrtl, before genrtl.h exists. But we don't - need it either. */ -#define NO_GENRTL_H +/* This version is used by the gen* programs and certain language-specific + targets (such as java), where we don't really need GC at all. + This prevents problems with pulling in all the tree stuff. */ +#ifdef GENERATOR_FILE +#include "bconfig.h" +#else #include "config.h" +#endif + #include "system.h" -#include "rtl.h" -#include "tm_p.h" +#include "coretypes.h" #include "ggc.h" -/* For now, keep using the old obstack scheme in the gen* programs. */ -int ggc_p = 0; - -rtx -ggc_alloc_rtx (nslots) - int nslots; +void * +ggc_alloc_typed_stat (enum gt_types_enum ARG_UNUSED (gte), size_t size + MEM_STAT_DECL) { - int size = sizeof(struct rtx_def) + (nslots - 1) * sizeof(rtunion); - rtx n; - - n = (rtx) xmalloc (size); - bzero ((char *) n, size); + return xmalloc (size); +} - return n; +void * +ggc_alloc_stat (size_t size MEM_STAT_DECL) +{ + return xmalloc (size); } -rtvec -ggc_alloc_rtvec (nelt) - int nelt; +void * +ggc_alloc_cleared_stat (size_t size MEM_STAT_DECL) { - int size = sizeof (struct rtvec_def) + (nelt - 1) * sizeof (rtx); - rtvec v; + return xcalloc (size, 1); +} - v = (rtvec) xmalloc (size); - bzero ((char *) v, size); +void * +ggc_realloc_stat (void *x, size_t size MEM_STAT_DECL) +{ + return xrealloc (x, size); +} - return v; +void +ggc_free (void *p) +{ + free (p); }