On Wed, Nov 6, 2024 at 12:43 AM Sam James <s...@gentoo.org> wrote:
>
> Sam James <s...@gentoo.org> writes:
>
> > Alexander Monakov <amona...@ispras.ru> writes:
> >
> >> On Fri, 1 Nov 2024, Jan Hubicka wrote:
> >>
> >>> > I have a vague memory that one of the tests in SPEC has a loop that
> >>> > tries to malloc, doubling the size each time, until it fails.  Would
> >>> > the patch change the behavior of such a loop?
> >>>
> >>> If the resulting allocation is unused except for NULL check we will make
> >>> it always "succeed" and thus the loop will likely loop forever.  I
> >>> wonder what this loop computes on systems, like linux, that overcommits
> >>> memory.
> >>
> >> Even with overcommit, malloc is going to return NULL as soon as you pass
> >> a half or more of the address space as the requested allocation size.
> >>
> >> Since the patch eliminates malloc with unknown size, I think this transform
> >> is incorrect (wasn't correct for the same reason in LLVM either).
> >>
> >> I'm pretty sure it's going to break some Glibc tests that verify that
> >> malloc(SIZE_MAX / 2 + 1) does not succeed.
> >>
> >> Please reconsider? Why to we need to match LLVM here?
> >
> > Some references to feed discussion which I had in my logs from
> > discussing it with someone the other week after that interaction we
> > had with alanc:
> > * https://github.com/llvm/llvm-project/issues/28790 (not very
> > insightful, other than to show it has a history of confusing people, but
> > one might argue that for other (definitely-valid) optimisations)
> > * https://github.com/llvm/llvm-project/issues/49826
> > * https://github.com/llvm/llvm-project/issues/51476
>
> + https://github.com/llvm/llvm-project/issues/114772

Related https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88576 .

>
>

Reply via email to