This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Debugging var-tracking problem
- From: Michael Collison <michael dot collison at linaro dot org>
- To: gcc at gcc dot gnu dot org
- Date: Wed, 04 Jun 2014 09:44:42 -0700
- Subject: Debugging var-tracking problem
- Authentication-results: sourceware.org; auth=none
Folks,
I am working on a bug in variable tracking:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61033
GCC is looping infinitely in attempting to solve a data flow problem in
vt_find_locations. My working theory is that compute_bb_dataflow is
incorrectly asserting some value has changed when it has not. I have
reduced my case to a candidate set of basic blocks and a (candidate) RTL
location this is continually removed/added. The rtl location is:
dataflow difference found: removal of:
name: D#255
offset 0
(mem/f/c:SI (value/u:SI 106:3955 @0x22cb2f8/0x23424a0) [3
result.d+0 S4 A32])
I understand that the argument to 'VALUE" is a cselib_val_struct but I
don't know how to map this back to a insn that is causing the problem.
Any thoughts on how I might debug thus further?
Regards,
Michael Collison
michael.collison@linaro.org