diff options
author | Zack Weinberg <zack@gcc.gnu.org> | 2000-11-17 17:31:13 +0000 |
---|---|---|
committer | Zack Weinberg <zack@gcc.gnu.org> | 2000-11-17 17:31:13 +0000 |
commit | a8a05998deca5cf6fac99e9a9b6e8343ea3c1b3f (patch) | |
tree | 28ab3f3c8eaffc74f74093a91fbefd178d3d02b5 /gcc/config/rs6000/rs6000.c | |
parent | 9e7d5ee8095d41ef744b875de504a22b46f33fb8 (diff) | |
download | gcc-a8a05998deca5cf6fac99e9a9b6e8343ea3c1b3f.zip gcc-a8a05998deca5cf6fac99e9a9b6e8343ea3c1b3f.tar.gz gcc-a8a05998deca5cf6fac99e9a9b6e8343ea3c1b3f.tar.bz2 |
ggc.h: Delete ggc_add_string_root and ggc_mark_string.
* ggc.h: Delete ggc_add_string_root and ggc_mark_string. Add
digit_vector and digit_string.
* stringpool.c (digit_vector): New.
(ggc_alloc_string): Use digit_string.
* stmt.c (digit_strings): Delete.
(init_stmt): Do not initialize digit_strings.
(expand_asm_operands): Use ggc.h's digit_string macro.
* toplev.c (mark_file_stack): Delete.
(compile_file): Don't call init_tree_codes.
(main): No need to make the file stack a GC root.
* tree.c (init_tree_codes): Delete.
* tree.h (init_tree_codes): Delete.
* c-lex.c: Don't include ggc.h.
(mark_splay_tree_node, mark_splay_tree): Delete.
(init_c_lex): No need to ggc_strdup string constant. Don't add
file_info_tree to GGC roots.
(cb_enter_file, cb_rename_file): No need to ggc_strdup
ip->nominal_fname.
* Makefile.in (c-lex.o): No longer depends on $(GGC_H).
* dbxout.c (dbxout_init),
dwarf2out.c (dwarf2out_line),
ggc-common.c (ggc_mark_rtx_children, ggc_mark_trees),
varasm.c (mark_const_hash_entry, mark_pool_constant, init_varasm_once),
xcoffout.c (xcoffout_source_file),
i386.c (load_pic_register):
Delete call(s) to ggc_add_string_root and/or ggc_mark_string.
* except.c (create_rethrow_ref),
profile.c (init_edge_profiler),
toplev.c (compile_file),
varasm.c (named_section, assemble_static_space,
assemble_trampoline_template, output_constant_def, force_const_mem),
i386.c (load_pic_register),
ia64.c (ia64_encode_section_info),
rs6000.c (rs6000_emit_load_toc_table, create_TOC_reference,
rs6000_emit_prologue, rs6000_emit_epilogue),
rs6000.md (load_toc_aix_si, load_toc_aix_di):
Change ggc_alloc_string (var, -1) to ggc_strdup (var).
* profile.c (output_func_start_profiler),
tree.c (make_node),
i386.c (load_pic_register): No need to ggc_strdup string constant.
cp:
* lex.c (mark_impl_file_chain): Delete.
(init_parse): Remove call to ggc_add_string_root. No need to
ggc_strdup a string constant. Do not add impl_file_chain to GC
roots.
(handle_pragma_implementation): No need to ggc_strdup main_filename.
f:
* lex.c (ffelex_hash_): Change ggc_alloc_string (var, -1) to
ggc_strdup (var).
java:
* parse.y (goal): Remove call to ggc_add_string_root.
From-SVN: r37522
Diffstat (limited to 'gcc/config/rs6000/rs6000.c')
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 98fb376..6dbcb25 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -5114,10 +5114,10 @@ rs6000_emit_load_toc_table (fromprolog) rtx symL; ASM_GENERATE_INTERNAL_LABEL (buf, "LCF", rs6000_pic_labelno); - symF = gen_rtx_SYMBOL_REF (Pmode, ggc_alloc_string (buf, -1)); + symF = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (buf)); ASM_GENERATE_INTERNAL_LABEL (buf, "LCL", rs6000_pic_labelno); - symL = gen_rtx_SYMBOL_REF (Pmode, ggc_alloc_string (buf, -1)); + symL = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (buf)); rs6000_maybe_dead (emit_insn (gen_load_toc_v4_PIC_1 (tempLR, symF))); @@ -5131,11 +5131,10 @@ rs6000_emit_load_toc_table (fromprolog) rtx tocsym; static int reload_toc_labelno = 0; - tocsym = gen_rtx_SYMBOL_REF (Pmode, - ggc_alloc_string (toc_label_name, -1)); + tocsym = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (toc_label_name)); ASM_GENERATE_INTERNAL_LABEL (buf, "LCG", reload_toc_labelno++); - symF = gen_rtx_SYMBOL_REF (Pmode, ggc_alloc_string (buf, -1)); + symF = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (buf)); rs6000_maybe_dead (emit_insn (gen_load_toc_v4_PIC_1b (tempLR, symF, @@ -5152,7 +5151,7 @@ rs6000_emit_load_toc_table (fromprolog) char buf[30]; rtx realsym; ASM_GENERATE_INTERNAL_LABEL (buf, "LCTOC", 1); - realsym = gen_rtx_SYMBOL_REF (Pmode, ggc_alloc_string (buf, -1)); + realsym = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (buf)); rs6000_maybe_dead (emit_insn (gen_elf_high (dest, realsym))); rs6000_maybe_dead (emit_insn (gen_elf_low (dest, dest, realsym))); @@ -5205,12 +5204,11 @@ rtx create_TOC_reference(symbol) rtx symbol; { - return gen_rtx_PLUS (Pmode, - gen_rtx_REG (Pmode, TOC_REGISTER), - gen_rtx_CONST (Pmode, - gen_rtx_MINUS (Pmode, symbol, - gen_rtx_SYMBOL_REF (Pmode, - ggc_alloc_string (toc_label_name, -1))))); + return gen_rtx_PLUS (Pmode, + gen_rtx_REG (Pmode, TOC_REGISTER), + gen_rtx_CONST (Pmode, + gen_rtx_MINUS (Pmode, symbol, + gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (toc_label_name))))); } #if TARGET_AIX @@ -5613,7 +5611,7 @@ rs6000_emit_prologue() LINK_REGISTER_REGNUM)); sprintf (rname, "%s%d%s", SAVE_FP_PREFIX, info->first_fp_reg_save - 32, SAVE_FP_SUFFIX); - alloc_rname = ggc_alloc_string (rname, -1); + alloc_rname = ggc_strdup (rname); RTVEC_ELT (p, 1) = gen_rtx_USE (VOIDmode, gen_rtx_SYMBOL_REF (Pmode, alloc_rname)); @@ -6061,7 +6059,7 @@ rs6000_emit_epilogue(sibcall) sprintf (rname, "%s%d%s", RESTORE_FP_PREFIX, info->first_fp_reg_save - 32, RESTORE_FP_SUFFIX); - alloc_rname = ggc_alloc_string (rname, -1); + alloc_rname = ggc_strdup (rname); RTVEC_ELT (p, 2) = gen_rtx_USE (VOIDmode, gen_rtx_SYMBOL_REF (Pmode, alloc_rname)); |