This is the mail archive of the gcc-bugs@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: c/10339: strncmp generates imPure code


I think I see what is happening. I guess computers are smarter ;-)

Andreas Schwab wrote:
Michael Ubell <ubell at mindspring dot com> writes:

|> Do you mean you want me to set up a case where it runs off the
|> end of memory?

Yes.

Can't happen.



|> I think it is sufficient that it is reading memory |> that is not allocated, no?

No, it is not.

Well it would be but memcmp does not read the memory.



It is. Memory returned by malloc is required to be correctly aligned for any type.


I'm still not clear what alignment has to do with it.


The optimization takes advantage of the fact that a properly formatted
string which is shorter than the constant string cannot compare passed its
end because there must be a null byte there.

Purify must have a different model of what memcmp does.  I'll send
it to them.

Thanks
Mike


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