This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [bootstrap-O3] add a default initializer to avoid a warning at -O3


On 01/04/2017 06:42 AM, Jason Merrill wrote:
On Wed, Jan 4, 2017 at 8:13 AM, Alexandre Oliva <aoliva@redhat.com> wrote:
On Jan  3, 2017, Jason Merrill <jason@redhat.com> wrote:

Are there bugzillas for these false positive warnings?

I don't think so.

Did you mean in the sense that the patch silences them and thus "fixes"
them, or in the sense that the underlying cause for the warnings is not
fixed and someone might want to look into them at a later time?

FWIW, I hadn't considered the latter (it doesn't seem too hard to find
such warnings anyway; every time I try bootstrap-O3, which is not very
often, I get a few of those), and the former didn't seem enough of a
reason to have bug reports created.

The latter; false positive warnings like this are bugs that should be fixed.
For the -O1 stuff the lower optimization level disables the optimizers that would identify and optimize away the infeasible path.

For -O3 cases with unrolling, the unroller can create oob array references with a guard. Our ability to exploit the guard isn't as strong as it should be -- we've got BZs for this already.

For the -O3 these are cases where the inliner exposes the infeasible path, but we're not currently able to analyze the infeasible path.

One could argue that any initializer we add ought to avoid a false positive for -O2 or -O3 ought to be marked and a bug opened. But I didn't feel it was worth pushing for that level of rigor since at most these are missed optimizations. But it would certainly be nice.

jeff



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]