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.colli...@linaro.org



Reply via email to