[Bug middle-end/78879] -fprofile-generate causes undefined reference to `____ilog2_NaN'
coolypf at qq dot com
gcc-bugzilla@gcc.gnu.org
Fri Dec 23 00:38:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78879
Yuan Pengfei <coolypf at qq dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |UNCONFIRMED
Resolution|INVALID |---
--- Comment #10 from Yuan Pengfei <coolypf at qq dot com> ---
(In reply to Jeffrey A. Law from comment #9)
> The posted patch is just papering over the problem by changing the iteration
> order of jump threads we examine. Since realization of some jump threads
> will cause others to not be realized, changing the iteration order can cause
> different jump threads to be realized.
>
> As discussed PR72785, this is a kernel bug in that the kernel code assumes
> that paths leading to a __builtin_object_size will not be
> duplicated/isolated.
The case in PR72785 is that a non-constant b_c_p argument turns into a constant
argument, which is a kernel bug as you have discussed.
But the case here is that a constant, non-zero b_c_p argument (sector_size)
turns into a constant, maybe-zero argument. Therefore, I think this is a
compiler bug.
I don't know much about how jump threading interacts with profile
instrumentation. But keeping the original iteration order does fix this
particular bug.
More information about the Gcc-bugs
mailing list