diff options
author | samuel <samuel@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-09-22 05:51:44 +0000 |
---|---|---|
committer | samuel <samuel@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-09-22 05:51:44 +0000 |
commit | 0f4dbfb982e350a2585bd8416ad8740661abebb2 (patch) | |
tree | d77f393f094055cf54780770525095be9da9ac8a /gcc/ggc.h | |
parent | 711575e5dabfc53f14d875185e1111e9073f0199 (diff) | |
download | gcc-0f4dbfb982e350a2585bd8416ad8740661abebb2.tar.gz |
Various fixes for problems discovered stress-testing GC.
* config/i386/i386.c (pic_label_name): Change to char pointer.
(global_offset_table): New variable.
(load_pic_register): Fill global_offset_table if it hasn't
already been done. Allocate pic_label_name dynamically.
* ggc.h (empty_string): New variable.
* ggc-simple.c (empty_string): Likewise.
(init_ggc): Allocate empty_string and add as root.
* stmt.c (digit_strings): New variable.
(init_stmt): Add last_block_end_note as root. Allocate and
initialize digit_strings.
(expand_asm_operands): Use empty_string and digit_string instead
of string constants.
* profile.c (init_arc_profiler): Allocate with ggc_alloc_string
instead of xmalloc.
(output_func_start_profiler): Likewise.
* c-typeck.c (digest_init): Check if init is error_mark_node.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@29575 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ggc.h')
-rw-r--r-- | gcc/ggc.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/ggc.h b/gcc/ggc.h index de43e9e8ab5..49a8df00749 100644 --- a/gcc/ggc.h +++ b/gcc/ggc.h @@ -42,6 +42,9 @@ union tree_node; struct varasm_status; struct varray_head_tag; +/* Constants for general use. */ +extern char *empty_string; + /* Manipulate global roots that are needed between calls to gc. */ void ggc_add_root PROTO ((void *base, int nelt, int size, void (*)(void *))); void ggc_add_rtx_root PROTO ((struct rtx_def **, int nelt)); |