aboutsummaryrefslogtreecommitdiff
path: root/gcc/config.gcc
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2010-02-26 12:01:28 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2010-02-26 12:01:28 +0100
commite7140c8da2bb3dd863bb5f43638d066462a82287 (patch)
treefa702f56527bb502176978eaa062fe31ff745b7a /gcc/config.gcc
parent894b386f8e2c0c50d33bfb26cb0a9053c496a78f (diff)
downloadgcc-e7140c8da2bb3dd863bb5f43638d066462a82287.zip
gcc-e7140c8da2bb3dd863bb5f43638d066462a82287.tar.gz
gcc-e7140c8da2bb3dd863bb5f43638d066462a82287.tar.bz2
re PR debug/43161 (Wrong debug info in guality/vla-1.c (f2))
PR debug/43161 * regcprop.c (struct queued_debug_insn_change): New type. (struct value_data_entry): Add debug_insn_changes field. (struct value_data): Add n_debug_insn_changes field. (debug_insn_changes_pool): New variable. (free_debug_insn_changes, apply_debug_insn_changes, cprop_find_used_regs_1, cprop_find_used_regs): New functions. (kill_value_one_regno): Call free_debug_insn_changes if needed. (init_value_data): Clear debug_insn_changes and n_debug_insn_changes fields. (replace_oldest_value_reg): Don't change DEBUG_INSNs, instead queue changes for them. (copyprop_hardreg_forward_1): Don't call apply_change_group for DEBUG_INSNs. For a real insn, if there are queued DEBUG_INSN changes, call cprop_find_used_regs via note_stores. (copyprop_hardreg_forward): When copying vd from predecessor which has any queued DEBUG_INSN changes, make sure the pointers are cleared. At the end call df_analyze and then if there are any DEBUG_INSN changes queued at the end of some basic block for still live registers, apply them. (pass_cprop_hardreg): Set TODO_df_finish in todo_flags_finish. From-SVN: r157083
Diffstat (limited to 'gcc/config.gcc')
0 files changed, 0 insertions, 0 deletions