Hi,

When I try to print the dumps of fold-const.c
with -fdump-rtl-all-slim cc1plus crashes.
This is caused by pretty-printing the ADDR_VEC pattern,
which has a single argument, a vector of LABEL_REFs at position 0.
But instead XEXP(x,0) is printed, which causes the ICE.

However also ADDR_DIFF_VEC seems to do the wrong thing,
because the XEXP(0) is an uninteresting label, which references just
the own position.

Instead of that, the list of LABEL_REFs should be printed IMO,
which is at position 1, in this case.

The attached patch fixes both, by prining the list if LABEL_REFs
separated by semicolons.


Boot-strapped and regression-tested on x86_64-linux-gnu.
OK for trunk?


Thanks
Bernd.
                                          
2014-07-15  Bernd Edlinger  <bernd.edlin...@hotmail.de>

        PR rtl-optimization/61461
        * sched-vis.c (print_pattern) <ADDR_VEC, ADDR_DIFF_VEC>: Fixed.

Attachment: patch-pr61461.diff
Description: Binary data

Reply via email to