RFA: PATCH to expand_used_vars for debug/42800

Jason Merrill jason@redhat.com
Fri Feb 19 22:19:00 GMT 2010


The problem is this PR is that when are writing out the debug info for 
the temporary containing the upper bound of the VLA, its rtl still 
refers to virtual regs, so dwarf2out gives up and doesn't emit any debug 
info for the upper bound.  This happens because the Expand from SSA 
patch broke Jakub's patch for PR 34037, such that expand_used_vars is no 
longer re-adding the variable to cfun->local_decls.

The patch adjusts the logic in expand_used_vars so that the PR 34037 fix 
is executed again for this variable.

I have also attached a second (alternative) patch which fixes the 
symptom by calling instantiate_decl_rtl from dwarf2out.  This patch is 
lower in impact, but I think the first patch is safe enough that we 
don't need to be this conservative.

Tested x86_64-pc-linux-gnu.  OK for trunk?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 42800.patch
Type: text/x-patch
Size: 3273 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20100219/f2759018/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 42800-2.patch
Type: text/x-patch
Size: 2415 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20100219/f2759018/attachment-0001.bin>


More information about the Gcc-patches mailing list