summaryrefslogtreecommitdiffstats
path: root/gcc/var-tracking.c
Commit message (Collapse)AuthorAgeFilesLines
* * var-tracking.c (variable_part_different_p): Variable parts differzlomek2004-04-201-0/+6
| | | | | | | when the most recent locations differ. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@80880 138bc75d-0d04-0410-961f-82ee72b054a4
* * bt-load.c, builtins.c, cfghooks.c, cfgrtl.c, gcse.c,kazu2004-03-221-10/+10
| | | | | | | | ggc-page.c, integrate.c, var-tracking.c, web.c: Remove unnecessary casts. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79811 138bc75d-0d04-0410-961f-82ee72b054a4
* PR/14362zlomek2004-03-111-38/+166
| | | | | | | | | | | | | | | | | | | | | | | | | * var-tracking.c (struct variable_def): Added field refcount. (variable_htab_free): Decrease the refcount and delete variable only if there are no more references. (unshare_variable): New function. (vars_copy_1): Increase refcount instead of copying the variable. (variable_union): Share the variables where possible, unshare the variables if needed. (variable_different_p): Return false if var1 and var2 are the same structure. (variable_was_changed): Init the refcount of new variable. (set_frame_base_location): Unshare variable if needed. (set_variable_part): Init the refcount of new variable. Unshare the variables if needed. (delete_variable_part): Unshare the variables if needed. (emit_notes_for_differences_1): Init the refcount of new variable. (vt_add_function_parameters): Do not add function parameters to IN set of ENTRY_BLOCK_PTR because it is unused anyway. (vt_initialize): Do not add frame_base_decl to IN set of ENTRY_BLOCK_PTR because it is unused anyway. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79307 138bc75d-0d04-0410-961f-82ee72b054a4
* * var-tracking.c (vars_copy_1): Cleanup and speedup chain operations.zlomek2004-03-111-40/+28
| | | | | | | | | | (vars_copy): Likewise. (variable_union): Likewise. (set_variable_part): Likewise. (delete_variable_part): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79304 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-typeck.c, combine.c, cse.c, dominance.c, et-forest.h,kazu2004-03-111-3/+3
| | | | | | | | | | | | | | ggc-page.c, var-tracking.c, config/fp-bit.c, config/c4x/c4x.c, config/cris/cris.c, config/i386/ppro.md, config/i860/i860.c, config/i860/i860.h, config/m32r/m32r.h, config/m32r/xm-m32r.h, config/m68hc11/m68hc11.h, config/m68hc11/m68hc11.md, config/mips/mips.c, config/mmix/mmix.c, config/ns32k/ns32k.h, config/pa/pa.c, config/pa/pa32-regs.h, config/pa/pa64-regs.h, config/pdp11/pdp11.h, config/rs6000/rs6000.c, config/stormy16/stormy16.c: Fix comment typos and formatting. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79303 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix typo.zlomek2004-03-041-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78909 138bc75d-0d04-0410-961f-82ee72b054a4
* PR/14362zlomek2004-03-041-0/+4
| | | | | | | | * var-tracking.c (track_expr_p): Do not track variables which should be ignored for debugging purposes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78902 138bc75d-0d04-0410-961f-82ee72b054a4
* * toplev.c (dump_file_tbl): Rename from dump_file.rth2004-02-241-19/+19
| | | | | | | | | | | | | | * bb-reorder.c, bt-load.c, cfgcleanup.c, cfglayout.c, cfgloopanal.c, cfgloopmanip.c, cfgrtl.c, config/arm/arm.c, config/frv/frv.c, config/i386/i386.c, config/ia64/ia64.c, config/mips/mips.c, config/sh/sh.c, cse.c, flow.c, ifcvt.c, loop-iv.c, loop-unroll.c, loop-unswitch.c, output.h, predict.c, profile.c, ra-build.c, ra-colorize.c, ra-debug.c, ra-rewrite.c, ra.c, regrename.c, reload1.c, toplev.c, tracer.c, value-prof.c, var-tracking.c, web.c: s/rtl_dump_file/dump_file/g. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78399 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-decl.c, c-ppoutput.c, cpphash.h, cpplib.h, dbxout.c,kazu2004-02-161-1/+1
| | | | | | | | line-map.c, line-map.h, var-tracking.c: Fix comment formatting. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77888 138bc75d-0d04-0410-961f-82ee72b054a4
* * tree.h (frame_base_decl): Add GTY marker.uweigand2004-02-111-1/+1
| | | | | | | * var-tracking.c (frame_base_decl): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77671 138bc75d-0d04-0410-961f-82ee72b054a4
* * var-tracking.c (vt_add_function_parameters): Surround checkings byzlomek2004-02-071-0/+4
| | | | | | | #ifdef ENABLE_CHECKING and #endif. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77458 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-ppoutput.c, var-tracking.c: Fix comment typos.kazu2004-02-071-3/+3
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77448 138bc75d-0d04-0410-961f-82ee72b054a4
* Josef Zlomek <zlomekj@suse.cz>zlomek2004-02-061-0/+2633
* Makefile.in (var-tracking.o): New. * common.opt (fvar-tracking): New. * flags.h (flag_var_tracking): New. * gengtype.c (adjust_field_rtx_def): NOTE_INSN_VAR_LOCATION was added. * opts.c (common_handle_option): Add OPT_fvar_tracking. * print-rtl.c (print_rtx): NOTE_INSN_VAR_LOCATION was added. * rtl.c (note_insn_name): Likewise. * rtl.def (VAR_LOCATION): New. * rtl.h (NOTE_VAR_LOCATION): New. (NOTE_VAR_LOCATION_DECL): New. (NOTE_VAR_LOCATION_LOC): New. (enum insn_note): NOTE_INSN_VAR_LOCATION was added. (variable_tracking_main): New exported function. * timevar.def (TV_VAR_TRACKING): New. * toplev.c (enum dump_file_index): Added DFI_vartrack. (dump_file): "vartrack" was added (-dV). (flag_var_tracking): New. (f_options): "var-tracking" was added. (rest_of_handle_variable_tracking): New function. (rest_of_compilation): Run variable tracking. (process_options): If user has not specified flag_var_tracking set it according to optimize, debug_info_level and debug_hooks. * tree.h (frame_base_decl): New. * var-tracking.c: New file. * config/ia64/ia64.c (ia64_flag_var_tracking): New variable. (ia64_override_options): Set flags to run variable tracking in machine dependent reorg instead of toplev.c. (ia64_reorg): Run variable tracking if wanted. * doc/invoke.texi: Mention variable tracking in -dV, add and -fvar-tracking. * doc/passes.texi: Added variable tracking pass. Daniel Berlin <dberlin@dberlin.org> * debug.h (struct gcc_debug_hooks): Added var_location debug hook. * dbxout.c (dbx_debug_hooks): Likewise. (xcoff_debug): Likewise. * debug.c (do_nothing_debug_hooks): Likewise. * dwarf2out.c (dwarf2_debug_hooks): Likewise. * dwarfout.c (dwarf_debug_hooks): Likewise. * sdbout.c (sdb_debug_hooks): Likewise. * vmsdbgout.c (vmsdbg_debug_hooks): Likewise. * final.c (final_scan_insn): Call var_location debug hook for each NOTE_INSN_VAR_LOCATION. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77418 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud