On 09/03/2015 02:39 AM, Richard Sandiford wrote:

It sounds like Jeff has a much more radical rewrite in mind,
Certainly not anything on the immediate horizon. The amount of block copying that'd be needed to isolate the jump threading path would be significant.

I do wonder if we should be looking at a way to mark paths which have jump threading opportunities, but which we do not optimize and exploit that information in the uninit and other analysis.

Bodik had a paper on those concepts as well. He was mostly looking at how to account for those paths in code coverage analysis, but there may be something useful in there.

so for now how about just turning -Wmaybe-uninitialized into
a warning for this function?  The patch will mean that it becomes
a warning even if someone turns off warnings on the command line,
but I don't think that's important.

Bootstrapped and regression-tested on x86_64-linux-gnu.  Also tested
with a cross-compiler to sparc-linux-gnu (which also triggered the
warning for me).  Tested that clang could still compile the file.
OK to install?


gcc/
        * reload1.c (elimination_costs_in_insn): Locally turn
        -Wmaybe-uninitialized into a warning.
I can live with this. Though I'd appreciate it if someone could reduce the sparcv9 testcase and create a bug to track it too.

jeff

Reply via email to