This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug debug/43479] Missing DW_TAG_lexical_block+DW_TAG_variable
- From: "jakub at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 22 Mar 2010 18:22:08 -0000
- Subject: [Bug debug/43479] Missing DW_TAG_lexical_block+DW_TAG_variable
- References: <bug-43479-12292@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #2 from jakub at gcc dot gnu dot org 2010-03-22 18:22 -------
In the second testcase it is actually TER that breaks this (both on the trunk
and 4.4-RH).
In *.nrv we still have:
[d.c : 4:4] l_2 = l_1(D) + 1;
[d.c : 4:4] # DEBUG l => l_2
[d.c : 6:9] # DEBUG h => n_3(D)
[d.c : 7:11] # DEBUG i => k_5(D)
[d.c : 7:19] k_7 = k_5(D) + 1;
[d.c : 7:19] # DEBUG k => k_7
[d.c : 8:11] # DEBUG j => m_8(D)
[d.c : 8:19] m_10 = m_8(D) + 1;
[d.c : 8:19] # DEBUG m => m_10
[d.c : 10:3] __asm__ __volatile__("" : : "r" k_7, "r" l_2, "r" m_10);
[d.c : 11:1] return;
and the right block. Not sure why we do TER for "r" constraint, but even if we
do and it turns that some of the generated insns match what has been TERed, it
would be good to adjust locus and block of the insns.
--
jakub at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |matz at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43479