aboutsummaryrefslogtreecommitdiff
path: root/gcc/dwarf2out.c
AgeCommit message (Collapse)AuthorFilesLines
2002-04-16re PR target/6303 (output_operand: invalid expression as operand)Jakub Jelinek1-1/+10
PR target/6303 * dwarf2out.c (rtl_for_decl_location): Call ASM_SIMPLIFY_DWARF_ADDR before returning. * config/i386/i386.c (i386_simplify_dwarf_addr): Simplify @GOT only when inside of MEM by eliminating the indirection too. * config/s390/s390.h (ASM_SIMPLIFY_DWARF_ADDR): Define. * config/s390/s390.c (s390_simplify_dwarf_addr): New. * config/s390/s390-protos.h (s390_simplify_dwarf_addr): Add prototype. * gcc.dg/20020415-1.c: New test. From-SVN: r52358
2002-03-31dwarf2out.c (dwarf2out_define): Remove start_source_file call, CPP will ↵Daniel Berlin1-7/+0
start the file for us. 2002-03-30 Daniel Berlin <dan@dberlin.org> * dwarf2out.c (dwarf2out_define): Remove start_source_file call, CPP will start the file for us. From-SVN: r51621
2002-03-20Makefile.in: Update.Neil Booth1-4/+4
* Makefile.in: Update. * c-common.c: Include langhooks.h. (inline_forbidden_p): Use new hook. * diagnostic.c: Include langhooks.h. (format_with_decl, announce_function, default_print_error_function): Use new hook. * dwarf2out.c (dwarf2_name): Use new hook. * function.c: Include langhooks.h. (init_function_start): Use new hook. * langhooks-def.h (lhd_decl_printable_name): New. (LANGHOOKS_DECL_PRINTABLE_NAME): New. (LANGHOOKS_INITIALIZER): Update. * langhooks.c (lhd_decl_printable_name): New. * langhooks.h (struct lang_hooks): New hook. * toplev.c (decl_name, decl_printable_name): Remove. (open_dump_file): Use new hook. (process_options): Remove old hook. * tree.h (decl_printable_name): Remove. ada: * misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine. (gnat_init): Remove old hook. cp: * cp-lang.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine. * cp-tree.h (lang_printable_name): Rename. * error.c (lang_decl_name): Use new hook. * lex.c (cxx_init): Remove old hook. * pt.c (tsubst_expr): Use new hook. * tree.c (lang_printable_name): Rename. f: * com.c (lang_printable_name): Rename. (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine. (ffe_init): Don't use old hook. java: * decl.c (start_java_method): Use new hook. * lang.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine. (java_init): Remove old hook. objc: * objc-act.c (objc_init): Remove old hook. (objc_printable_name): Export. * objc-act.h (objc_printable_name): New. * objc-lang.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine. From-SVN: r51066
2002-03-12Makefile.in (debug.o): Depend on debug.h.Kaveh R. Ghazi1-1/+1
* Makefile.in (debug.o): Depend on debug.h. * dbxout.c (dbx_debug_hooks, xcoff_debug_hooks): Const-ify. * debug.c (do_nothing_debug_hooks): Likewise. * debug.h (debug_hooks, do_nothing_debug_hooks, dbx_debug_hooks, sdb_debug_hooks, xcoff_debug_hooks, dwarf_debug_hooks, dwarf2_debug_hooks, vmsdbg_debug_hooks): Likewise. * dwarf2out.c (dwarf2_debug_hooks): Likewise. * dwarfout.c (dwarf_debug_hooks): Likewise. * integrate.c (output_inline_function): Likewise. * objc/objc-act.c (synth_module_prologue): Likewise. * sdbout.c (sdb_debug_hooks): Likewise. * toplev.c (debug_hooks): Likewise. * vmsdbgout.c (vmsdbg_debug_hooks): Likewise. From-SVN: r50635
2002-02-28dwarf2out.c (stack_adjust_offset): Add support for POST_INC, POST_DEC, and ↵Andrew MacLeod1-16/+35
POST_MODIFY. * dwarf2out.c (stack_adjust_offset): Add support for POST_INC, POST_DEC, and POST_MODIFY. From-SVN: r50121
2002-02-27c-common.c, [...]: Delete code implementing -traditional mode.Zack Weinberg1-4/+0
* c-common.c, c-common.h, c-decl.c, c-lex.c, c-parse.in, c-tree.h, c-typeck.c, cppexp.c, cpplex.c, cpplib.c, cpplib.h, cppmacro.c, objc/lang-specs.h, objc/objc-act.c, builtin-types.def, builtins.def, dwarf2out.c, dwarfout.c, gcc.c, toplev.c: Delete code implementing -traditional mode. * ada/misc.c, ch/ch-tree.h, ch/decl.c, cp/decl2.c, f/com.c, f/lex.c, f/top.c, java/builtins.c, java/decl.c: Delete traditional-mode-related code copied from the C front end but not used, or used only to permit the compiler to link. * doc/bugreport.texi, doc/cpp.texi, doc/extend.texi, doc/invoke.texi, doc/standards.texi, doc/trouble.texi: Document removal of -traditional mode for compilation, and remove documentation only relevant to that mode. * config/nextstep.h, config/ptx4.h, config/svr4.h, config/convex/convex.h, config/d30v/d30v.h, config/i386/dgux.h, config/i386/osf1elf.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/sco5.h, config/i386/sol2.h, config/m68k/a-ux.h, config/m68k/hp310.h, config/m88k/dgux.h, config/m88k/dguxbcs.h, config/m88k/luna.h, config/m88k/m88k.c, config/m88k/m88k.h, config/m88k/openbsd.h, config/mips/abi64.h, config/mips/osfrose.h, config/mips/svr4-5.h, config/mips/svr4-t.h, config/sparc/sol2-sld-64.h, config/sparc/sol2.h, config/stormy16/stormy16.h: Remove all references to -traditional from target specs. Delete all mention of the no-longer-necessary TRADITIONAL_RETURN_FLOAT macro. Also delete a couple of commented-out definitions of DOLLARS_IN_IDENTIFIERS, with (incorrect) commentary referring to -traditional. * system.h: Poison TRADITIONAL_RETURN_FLOAT. * doc/tm.texi: Remove mention of TRADITIONAL_RETURN_FLOAT macro. * testsuite/gcc.c-torture/execute/920730-1t.c, testsuite/gcc.c-torture/execute/920730-1t.x, testsuite/gcc.dg/ext-glob.c: Delete test cases, only relevant to -traditional. From-SVN: r50110
2002-02-26re PR debug/5770 (undefined reference to `.LC0')Jakub Jelinek1-2/+32
PR debug/5770 * dwarf2out.c (rtl_for_decl_location): Return CONST_STRING for STRING_CST initializer spanning the whole variable without embedded zeros. If expand_expr returned MEM, don't use it. * g++.dg/debug/debug4.C: New test. From-SVN: r50058
2002-02-26dwarf2out.c (gen_inlined_subroutine_die): If block is abstract, generate a ↵Alexandre Oliva1-0/+14
die for the lexical block. * dwarf2out.c (gen_inlined_subroutine_die): If block is abstract, generate a die for the lexical block. From-SVN: r50056
2002-02-26dwarf2out.c (modified_type_die): Do not call type_main_variant for vectors.Aldy Hernandez1-5/+13
2002-02-26 Aldy Hernandez <aldyh@redhat.com> * dwarf2out.c (modified_type_die): Do not call type_main_variant for vectors. (gen_type_die): Same. * attribs.c (handle_vector_size_attribute): Set debug information. From-SVN: r50048
2002-02-21dwarf2out.c (DWARF_LINE_MIN_INSTR_LENGTH): Removed.Tom Tromey1-11/+10
* dwarf2out.c (DWARF_LINE_MIN_INSTR_LENGTH): Removed. (output_line_info): Use constant `1', with a long explanatory comment. * system.h (DWARF_LINE_MIN_INSTR_LENGTH): Poison. From-SVN: r49944
2002-02-21re PR debug/4461 (Invalid dawrf2 debug code)Jakub Jelinek1-2/+16
PR debug/4461 * varasm.c (get_pool_constant_mark): New. * rtl.h (get_pool_constant_mark): Add prototype. * dwarf2out.c (mem_loc_descriptor): A pool constant cannot be represented if it has not been output. * gcc.dg/debug/20020220-1.c: New test. From-SVN: r49921
2002-02-20fr30.h (DWARF_LINE_MIN_INSTR_LENGTH): Removed.Tom Tromey1-4/+4
* config/fr30/fr30.h (DWARF_LINE_MIN_INSTR_LENGTH): Removed. * config/sh/sh.h (DWARF_LINE_MIN_INSTR_LENGTH): Removed. * config/pj/pj.h (DWARF_LINE_MIN_INSTR_LENGTH): Removed. * config/cris/cris.h (DWARF_LINE_MIN_INSTR_LENGTH): Removed. * dwarf2out.c (DWARF_LINE_MIN_INSTR_LENGTH): Define unconditionally. From-SVN: r49903
2002-01-29dwarf2out.c (dwarf_cfi_name): Add other DWARF 3 codes.Jason Merrill1-8/+30
* dwarf2out.c (dwarf_cfi_name): Add other DWARF 3 codes. (output_cfi): Likewise. Disable DW_CFA_GNU_negative_offset_extended. (reg_save): Use DW_CFA_offset_extended_sf instead. * dwarf2out.c (dwarf2out_finish): Don't abort if there were errors. From-SVN: r49334
2002-01-22dwarf2out.c (equate_decl_number_to_die): Add "int" to decls.Richard Kenner1-2/+38
* dwarf2out.c (equate_decl_number_to_die): Add "int" to decls. (loc_descriptor_from_tree, case CALL_EXPR, case ADDR_EXPR): New. (add_bound_info, default): If can't find a context, make a SAVE_EXPR. (dwarf2out_finish): Check for SAVE_EXPR in node->created_for. From-SVN: r49069
2002-01-20dwarf2out.c (loc_descriptor_from_tree): Add TRUTH_*_EXPR cases.Richard Kenner1-1/+8
* dwarf2out.c (loc_descriptor_from_tree): Add TRUTH_*_EXPR cases. (gen_struct_or_union_type_die): Don't SIGSEGV if no TYPE_STUB_DECL in incomplete case. From-SVN: r49022
2002-01-18bitmap.h: Fix comment formatting.Kazu Hirata1-3/+3
* bitmap.h: Fix comment formatting. * combine.c: Likewise. * cppfiles.c: Likewise. * c-pragma.h: Likewise. * c-typeck.c: Likewise. * df.c: Likewise. * dwarf2out.c: Likewise. * function.c: Likewise. * gcc.c: Likewise. * genattrtab.c: Likewise. * gthr-win32.h: Likewise. * haifa-sched.c: Likewise. * predict.c: Likewise. * rtlanal.c: Likewise. * rtl.h: Likewise. * unwind-dw2-fde.h: Likewise. * unwind-pe.h: Likewise. * vmsdbgout.c: Likewise. From-SVN: r48987
2002-01-13* dwarf2out.c (mem_loc_descriptor, case ADDRESSOF): New case.Richard Kenner1-0/+8
From-SVN: r48815
2002-01-10dwarf2out.c (indirect_string_alloc, [...]): Move prototype into ↵Graham Stott1-5/+6
DWARF2_DEBUGGING_INFO conditional block. * dwarf2out.c (indirect_string_alloc, output_indirect_string): Move prototype into DWARF2_DEBUGGING_INFO conditional block. From-SVN: r48718
2002-01-05c-decl.c (c_expand_body): Don't call outlining_inline_function.Richard Henderson1-3/+15
* c-decl.c (c_expand_body): Don't call outlining_inline_function. * integrate.c (output_inline_function): Likewise. * toplev.c (rest_of_compilation): Do it here instead. Move call to remove_unnecessary_notes after emitting abstract instance. Force an emitted nested function to have its parent emited as well. * dwarf2out.c (loc_descriptor_from_tree): Read mode after checking for null. (rtl_for_decl_location): Do not look at reload data structures before reload has run. * semantics.c (expand_body): Revert last change. From-SVN: r48572
2002-01-05cse.c: Fix formatting.Kazu Hirata1-1/+1
* cse.c: Fix formatting. * dwarf2asm.c: Likewise. * dwarf2out.c: Likewise. * explow.c: Likewise. * expmed.c: Likewise. * function.c: Likewise. * gcov.c: Likewise. * gencheck.c: Likewise. * genrecog.c: Likewise. * ggc-common.c: Likewise. * ggc-page.c: Likewise. * global.c: Likewise. From-SVN: r48570
2002-01-04c-common.c: Fix formatting.Kazu Hirata1-10/+10
* c-common.c: Fix formatting. * diagnostic.c: Likewise. * doloop.c: Likewise. * dwarf2out.c: Likewise. From-SVN: r48526
2002-01-02dwarf2out.c (limbo_die_node): Add created_for member.Richard Henderson1-42/+78
* dwarf2out.c (limbo_die_node): Add created_for member. (new_die): New argument created_for. Update all callers. (mark_limbo_die_list): New. (dwarf2out_init): Register limbo_die_list as a root. (dwarf2out_finish): Force insert limbo dies into their function context. From-SVN: r48478
2001-12-29Fix typo in last change.Richard Kenner1-1/+1
From-SVN: r48392
2001-12-29dwarf2out.c (compute_section_prefix): Avoid cast warning.Richard Kenner1-10/+10
* dwarf2out.c (compute_section_prefix): Avoid cast warning. (gen_decl_die): Only check DECL_IGNORED_P on decls. (dwarf2out_decl): Check for DECL_IGNORED_P only when needed. From-SVN: r48382
2001-12-25* dwarf2out.c: Reformatting and minor code rearrangement.Richard Kenner1-650/+666
From-SVN: r48312
2001-12-22dwarf2out.c (save_rtx): Deleted.Richard Kenner1-21/+10
* dwarf2out.c (save_rtx): Deleted. (mem_loc_descriptor): Do equivalent operation. (add_const_value_attribute, case CONST): Likewise. (add_name_and_src_coords_attributes): Likewise. From-SVN: r48266
2001-12-19dwarf2out.c (add_name_and_src_coords_attributes): Fix VMS procedure ↵Douglas B Rupp1-2/+2
descriptor output. * dwarf2out.c (add_name_and_src_coords_attributes): Fix VMS procedure descriptor output. From-SVN: r48175
2001-12-14dwarf2out.c (output_die): Print the string in the comment for a DW_FORM_strp.Jason Merrill1-1/+1
* dwarf2out.c (output_die): Print the string in the comment for a DW_FORM_strp. From-SVN: r47997
2001-12-12dwarf2out.c (dw_val_class): Add dw_val_class_range_list.Jakub Jelinek1-6/+53
* dwarf2out.c (dw_val_class): Add dw_val_class_range_list. (DEBUG_RANGES_SECTION_LABEL): Define. (ranges_section_label): Add. (add_AT_range_list): New. (print_die, sizeof_die, value_format): Handle dw_val_class_range_list. (output_loc_list): Location expression length is always 2-byte. (output_die): Handle dw_val_class_range_list. (gen_lexical_block_die): Call add_AT_range_list. (dwarf2out_init): Initialize ranges_section_label. (dwarf2out_finish): Emit ranges_section_label. From-SVN: r47946
2001-12-02vms.h (VMS_DEBUGGING_INFO): New macro.Douglas B Rupp1-1/+14
* config/alpha/vms.h (VMS_DEBUGGING_INFO): New macro. (PREFERRED_DEBUGGING_TYPE): Define as VMS_AND_DWARF2_DEBUG. (ASM_SPEC): Don't redefine. (OPTIMIZATION_OPTIONS, OVERRIDE_OPTIONS, LINK_SPEC): Define. * config/alpha/t-vms (EXTRA_PARTS): Use; add rule for vms-dwarf2.asm. * config/alpha/vms-dwarf2.asm: New file. * Makefile.in (OBJS): Add vmsdbgout.c and its rule. * c-lex.c (init_c_lex): Test for VMS_AND_DWARF2_DEBUG. * debug.h (gcc_debug_hooks): Add vmsdbg_debug_hooks. (vmsdbgout_after_prologue): New declaration. * defaults.h (VMS_DEBUGGING_INFO): Add to PREFERRED_DEBUGGING_TYPE. * dwarf2.h (dwarf_attribute): New DW_AT_VMS_rtnbeg_pd_address. * dwarf2out.c (dwarf2out_do_frame): Test for VMS_AND_DWARF2_DEBUG. (dwarf2out_frame_finish): Test for VMS_AND_DWARF2_DEBUG. (dwarf_attr_name): Use DW_AT_VMS_rtnbeg_pd_address. (add_name_and_src_coords_attributes): Test VMS_DEBUGGING_INFO * final.c (final_start_function): Test for VMS_AND_DWARF2_DEBUG. Test VMS_DEBUGGING_INFO. (final_end_function): Test for VMS_AND_DWARF2_DEBUG. (final_scan_insn): Test for VMS_AND_DWARF2_DEBUG and VMS_DEBUG. * flags.h (debug_info_type): Add VMS_DEBUG and VMS_AND_DWARF2_DEBUG. * toplev.c (compile_file): Test VMS_DEBUGGING_INFO, VMS_DEBUG, and VMS_AND_DWARF2_DEBUG. (rest_of_type_compilation): Test for VMS_AND_DWARF2_DEBUG. (decode_g_option): Add "vms" to debug_type_names. (process_options): Set vmsdbg_debug_hooks if -gvms. (lang_independent_init): Emit line number for VMS unless -g0. * tree.c: (build_complex_type): Test for VMS_AND_DWARF2_DEBUG. * vmsdbg.h, vmsdbgout.c: New files. From-SVN: r47532
2001-12-02cfgrtl.c (purge_all_dead_edges): Initialize variable.Kaveh R. Ghazi1-0/+1
* cfgrtl.c (purge_all_dead_edges): Initialize variable. * dwarf2out.c (is_cxx): Prototype. * local-alloc.c (block_alloc): Avoid 'unsigned>=0 is always true' warning. * objc/objc-act.c (defer_fn): Avoid signed/unsigned warning. From-SVN: r47528
2001-11-30dwarf2out.c (is_cxx): New fn.Jason Merrill1-1/+8
* dwarf2out.c (is_cxx): New fn. (add_data_member_location_attribute): Check it. * dbxout.c (dbxout_type): Only look at BINFO_VPTR_FIELD for C++. From-SVN: r47483
2001-11-29dwarf2out.c (add_data_member_location_attribute): Do the right thing for ↵Jason Merrill1-12/+54
virtual bases. * dwarf2out.c (add_data_member_location_attribute): Do the right thing for virtual bases. * dbxout.c (dbxout_type): For a virtual base, print the offset within the vtable. From-SVN: r47469
2001-11-23ChangeLog.0, [...]: Fix spelling errors.Joseph Myers1-4/+4
* ChangeLog.0, ChangeLog.2, ChangeLog.3, ChangeLog.4, ChangeLog, FSFChangeLog.10, c-decl.c, cppfiles.c, cppinit.c, cpplex.c, cpplib.c, cppmain.c, cse.c, df.c, diagnostic.c, dominance.c, dwarf2out.c, dwarfout.c, emit-rtl.c, errors.c, except.c, except.h, explow.c, function.c, gcse.c, genrecog.c, predict.c, regmove.c, sched-rgn.c, ssa-ccp.c, stmt.c, toplev.c: Fix spelling errors. From-SVN: r47279
2001-11-19tree.def (VIEW_CONVERT_EXPR): New tree code.Richard Kenner1-0/+2
* tree.def (VIEW_CONVERT_EXPR): New tree code. * tree.h (handled_component_p): New declaration. * alias.c (handled_component_p): Move function from here ... * expr.c (handled_component_p): ... to here and non longer static. (is_zeros_p, case VIEW_CONVERT_EXPR): New case. (store_field): Remove unneeded MEM_COPY_ATTRIBUTES call. (get_inner_reference): Handle VIEW_CONVERT_EXPR. (expand_expr, case VAR_DECL): Clean up handling of re-layout case. (expand_expr, case VIEW_CONVERT_EXPR): New case. (expand_expr, cse ADDR_EXPR): No need to copy if already BIGGEST_ALIGNMENT. * fold-const.c (fold, case VIEW_CONVERT_EXPR): New case. * varasm.c (initializer_constant_value_p, case VIEW_CONVERT_EXPR): New. (output_constant): Handle VIEW_CONVERT_EXPR. * dwarf2out.c (loc-descriptor_from_tree, add_bound_info): Add new case for VIEW_CONVERT_EXPR. From-SVN: r47179
2001-11-15alias.c (nonoverlapping_memrefs): Use REGNO_PTR_FRAME_P.Richard Kenner1-2/+1
* alias.c (nonoverlapping_memrefs): Use REGNO_PTR_FRAME_P. * emit-rtl.c (change_address): Fix typo in default alignment. (adjust_address_1): Use mode of NEW, not MODE, when setting size. * expr.c (highest_pow2_factor, case WITH_RECORD_EXPR): New case. * rtl.h (REGNO_PTR_FRAME_P): New macro. * expr.c (store_field): Pass tree instead of max size; callers changed. Change handling of alignment. Only copy to_rtx if is TARGET. (expand_expr_unaligned): Delete; callers now use expand_expr. (emit_cmp_insn): No longer take ALIGN parm; all callers changed. (expand_assignment): Change handling of alignment. Only copy to_rtx if was original. (get_inner_reference): No longer return alginment; callers changed. (expand_expr, case COMPONENT_REF): Change handling of alignment. (expand_expr, case ADDR_EXPR): Make copy if not sufficiently aligned. (compare_from_rtx): Delete ALIGN parm; all callers changed. (do_compare_rtx_and_jump): Likewise. * expr.h: Reflect above changes. * tree.h: Likewise. * dwarf2out.c (loc_descriptor_from_tree): Remove ALIGN parameter to get_inner_reference. * except.c: Remove ALIGN parameter in call to emit_cmp_and_jump_insns. * explow.c: Likewise. * loop.c: Likewise. * optabs.c: Likewise. (prepare_cmp_insn): Now static; remove ALIGN parm. Callers changed. (emit_cmp_and_jump_insns): Remove ALIGN parm; all callers changed. * fold-const.c: Remove PALIGN in calls to get_inner_reference. * function.c (assign_stack_temp_for_type): No longer static. * optabs.h (emit_cmp_insn): Remove ALIGN parm. (prepare_cmp_insn): Delete declaration. * rtl.h (assign_stack_temp_for_type): Add declaration. * config/d30v/d30v.c: Reflect above changes. * config/i860/i860.c, config/ia64/ia64.c: Likewise. * config/rs6000/rs6000.c, config/sh/sh.c: Likewise. * ada/trans.c, ada/utils2.c: Remove PALIGN parameter to get_inner_reference. From-SVN: r47075
2001-11-15dwarf2out.c (dwarf2out_finish): Don't abort because of orphan DIEs if there ↵Jason Merrill1-0/+3
were errors in the source. * dwarf2out.c (dwarf2out_finish): Don't abort because of orphan DIEs if there were errors in the source. * config/alpha/alpha-interix.h, config/alpha/elf.h, config/arm/coff.h, config/i386/djgpp.h, config/i386/i386.c, config/i386/i386.h, config/i386/sco5.h, config/i960/i960-coff.h, config/m68k/coff.h, config/m88k/m88k.h, config/m88k/m88k.c, config/pa/pa64-hpux.h, config/sh/sh.h, config/sparc/litecoff.h, config/elfos.h, config/lynx.h, config/netware.h, config/m68hc11/m68hc11.h, config/mcore/mcore-pe.h, config/s390/linux64.h: Remove definitions of INT_ASM_OP, change uses to use ASM_LONG. From-SVN: r47066
2001-11-12* dwarf2out.c (loc_descriptor_from_tree, case COMPOUND_EXPR): New case.Richard Kenner1-0/+3
From-SVN: r46939
2001-11-11ChangeLog.2, [...]: Fix spelling errors.Joseph Myers1-1/+1
* ChangeLog.2, ChangeLog.3, ChangeLog.4, ChangeLog.5, ChangeLog, cfg.c, cfganal.c, cfgcleanup.c, cfglayout.c, cfgloop.c, cfgrtl.c, collect2.c, combine.c, config.in, configure, configure.in, conflict.c, dwarf2out.c, dwarfout.c, except.c, final.c, flow.c, genattrtab.c, ggc-page.c, jump.c, lcm.c, predict.c, reg-stack.c, reload1.c, rtlanal.c, sched-rgn.c, toplev.c, unwind-dw2-fde.h: Fix spelling errors. From-SVN: r46928
2001-11-09c-lang.c (LANG_HOOKS_NAME): New.Neil Booth1-0/+2
* c-lang.c (LANG_HOOKS_NAME): New. (lang_hooks): Constify. (c_init_options): Update. (lang_identify): Remove. * c-parse.in (language_string): Remove. * dbxout.c: Include langhooks.h. (dbxout_symbol_location): Update. * dwarf2out.c: Include langhooks.h. (gen_compile_unit_die): Update. * dwarfout.c: Include langhooks.h. (prototyped_attribute, output_compile_unit_die): Update. * langhooks-def.h (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): New. (LANG_HOOKS_INITIALIZER): Update. * langhooks.h (struct lang_hooks): New members. Constify. * stringpool.c: Don't include toplev.h. (set_identifier_size): Remove. * toplev.c (toplev_main): Initialize identifier size. (print_version): Update. * tree.h (language_string, init_lex, lang_identify, set_identifier_size): Remove. * Makefile.in: Update dependencies. * config/darwin.c: Include langhooks.h. (func_name_maybe_scoped): Update. * config/darwin.h (ASM_END_FILE): Update. * config/nextstep.h (ASM_END_FILE): Update. * config/nextstep21.h (ASM_END_FILE): Update. * config/i386/sun386.h (ASM_END_FILE): Update. * config/rs6000/rs6000.c (ASM_END_FILE): Include langhooks.h. (rs6000_output_function_epilogue): Update. ada: * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override. (struct lang_hooks): Constify. (language_string, lang_identify): Remove. * utils.c (init_decl_processing): Update. cp: * cp-lang.c (LANG_HOOKS_NAME): Override. (struct lang_hooks): Constify. * lex.c (cxx_init_options): Update. (lang_identify): Remove. * parse.y (language_string): Remove. f: * com.c (language_string, lang_identify): Remove. (struct lang_hooks): Constify. (LANG_HOOKS_NAME): Override. (init_parse): Update. java: * jcf-parse.c (init_lex): Remove. * lang.c (language_string, lang_identify): Remove. (struct lang_hooks): Constify. (LANG_HOOKS_NAME): Override. (init_parse): Update. objc: * objc-act.c (LANG_HOOKS_NAME): Override. (struct lang_hooks): Constify. (objc_init_options): Update. (lang_identify): Remove. From-SVN: r46874
2001-11-08dwarf2out.c (debug_str_hash): New.Jakub Jelinek1-25/+145
* dwarf2out.c (debug_str_hash): New. (struct indirect_string_node): New. (struct dw_val_struct): Change type of val_str to it. (DEBUG_STR_SECTION_FLAGS): Define. (add_AT_string): Push string into hashtable, increment reference counter. (AT_string): Return string from ht_identifier. (AT_string_form): New. (free_AT): For dw_val_class_str, just decrement reference counter. (size_of_string): Remove. (size_of_die): Use AT_string_form to decide what size the string occupies in DIE. (size_of_pubnames): Use strlen instead of size_of_string. (value_format): Use AT_string_form for dw_val_class_str. (output_die): Output DW_FORM_strp strings using dw2_asm_output_offset. (indirect_string_alloc, output_indirect_string): New. (dwarf2out_finish): Emit .debug_str strings if there are any. From-SVN: r46858
2001-10-29dwarf2out.c (add_const_value_attribute): Fix error in last change.Richard Kenner1-3/+6
* dwarf2out.c (add_const_value_attribute): Fix error in last change. From-SVN: r46606
2001-10-27dwarf2out.c (reg_number): Abort if pseudo.Richard Kenner1-115/+147
* dwarf2out.c (reg_number): Abort if pseudo. (reg_loc_descriptor): Return 0 if pseudo. (is_based_loc): Return 0 if pseudo. (mem_loc_descriptor): Return 0 for pseudo and handle 0 return from recursive calls. (concat_loc_descriptor): Return 0 if either part's descriptor is 0. (loc_descriptor): Return 0 if can't find location and handle 0 return from recursive calls. (loc_descriptor_from_tree): Likewise. Fix handling of indirect. Also return 0 for PLACEHOLDER_EXPR. Clean up COMPONENT_REF cases. (add_AT_location_descriptor): Simplify, but handle 0 return from loc_descriptor. (add_const_value_attribute): Avoid shift count warning. (add_bound_info): Remove test for PLACEHOLDER_EXPR here. Set comp_unit_die as context if not in function. From-SVN: r46573
2001-10-26dwarf2out.c (PTR_SIZE, [...]): Move outside of macro guards.Kaveh R. Ghazi1-21/+25
* dwarf2out.c (PTR_SIZE, default_eh_frame_section): Move outside of macro guards. Fix #endif comment. * output.h (default_exception_section, default_eh_frame_section): Move prototypes outside of macro guard. * crtstuff.c: Fix #endif comment. From-SVN: r46520
2001-10-24* dwarf2out.c (file_info_cmp): Always return consistent results.Richard Kenner1-14/+14
From-SVN: r46480
2001-10-22target.h (struct gcc_target): Add asm_out.exception_section, ↵Stan Shebs1-12/+17
asm_out.eh_frame_section. * target.h (struct gcc_target): Add asm_out.exception_section, asm_out.eh_frame_section. * target-def.h (TARGET_ASM_EXCEPTION_SECTION): New macro. (TARGET_ASM_EH_FRAME_SECTION): New. (TARGET_INITIALIZER): Update. * output.h (default_exception_section): Declare. (default_eh_frame_section): Declare. * dwarf2out.c: Include target.h. (output_call_frame_info): Call target hook for eh frames. (default_eh_frame_section): New function. * except.c: Include target.h. (output_function_exception_table): Call target hook for exception section. * varasm.c (default_exception_section): Rename from exception_section, remove EXCEPTION_SECTION macro. * config/darwin.h (darwin_eh_frame_section): New function. (EXCEPTION_SECTION): Remove. (TARGET_ASM_EXCEPTION_SECTION): Define. * config/nextstep.h (EH_FRAME_SECTION_ASM_OP): Remove. (nextstep_exception_section): New function. (nextstep_eh_frame_section): New function. (TARGET_ASM_EXCEPTION_SECTION): Define. (TARGET_ASM_EH_FRAME_SECTION): Define. * config/pa/som.h (EXCEPTION_SECTION): Remove. (TARGET_ASM_EXCEPTION_SECTION): Define. * config/rs6000/sysv4.h, config/rs6000/xcoff.h (EXCEPTION_SECTION): Remove. (TARGET_ASM_EXCEPTION_SECTION): Define. * config/stormy16/stormy16.h: Remove comments referencing EXCEPTION_SECTION and EH_FRAME_SECTION_ASM_OP. * doc/tm.texi: Document TARGET_ASM_EXCEPTION_SECTION and TARGET_ASM_EH_FRAME_SECTION. From-SVN: r46409
2001-10-20basic-block.h (find_sub_basic_blocks): Use sbitmap parameter.Jan Hubicka1-3/+4
* basic-block.h (find_sub_basic_blocks): Use sbitmap parameter. * cfgbuild.c (find_bb_boundaries, compute_outgoing_frequencies): Break out from ... (find_sub_basic_blocks): ... here; (find_many_sub_basic_blocks): New. * recog.c (split_all_insns): Update find_sub_basic_blocks call. * i386.h (ASM_PREFERRED_EH_DATA_FORMAT): Define sdata4. * i386.c (ix86_va_arg): Kill indirect_p handling; fix aliasing issues.: * i386.c (split_di, split_ti): Revamp to use simplify_subreg. * timevar.def (TV_LIFE, TV_LIFE_UPDATE, TV_MODE_SWITCH): new. * flow.c (update_life_info): Measure time. * c-decl.c: Include timevar.h (c_expand_body): Measure time. * toplev.c (rest_of_compilation): Measure time of mode switching separately. * Makefile.in (c-decl.o, cfgcleanup.o): Add dependancy. * toplev.c (flag_asynchronous_unwind_tables): New global variable. (lang_independent_options): Add asynchronous-unwind-tables (toplev_main): flag_asynchronous_unwind_tables implies flag_unwind_tables. * flags.h (flag_asynchronous_unwind_tables): Declare. * dwarf2out.c (dwarf2out_stack_adjust): Take into account flag_asynchronous_unwind_tables. (output_call_frame_info): Likewise. * invoke.texi (-fasynchronous-unwind-tables): Document. * i386.c (optimization_options): Enable flag_asynchronous_unwind_tables. * i386.c (ix86_expand_setcc): Always expect target to be QImode. * i386.md (s* expanders): Destination is QImode. * toplev.c (rest_of_compilation): Do not call clear_log_links. * rtl.h (clear_log_links): Kill. * flow.c (clear_log_links): Make static; accept blocks parameter; do no clear life info. (update_life_info): Call clear_log_links. * cfganal.c (forwarder_block_p): Avoid active_insn_p calls. From-SVN: r46374
2001-10-11Tidy last change.Richard Henderson1-5/+1
From-SVN: r46205
2001-10-11dwarf2out.c (add_const_value_attribute): If long < HOST_WIDE_INT, fall back ↵Richard Henderson1-6/+7
to add_AT_long_long for large CONST_INT. * dwarf2out.c (add_const_value_attribute): If long < HOST_WIDE_INT, fall back to add_AT_long_long for large CONST_INT. From-SVN: r46204
2001-10-11dwarf2out.c (rtl_for_decl_location): If no DECL_RTL, look for a DECL_INITIAL.Richard Henderson1-0/+10
* dwarf2out.c (rtl_for_decl_location): If no DECL_RTL, look for a DECL_INITIAL. From-SVN: r46193