libstdc++/8230: Buggy allocator behaviour
Gabriel Dos Reis
gdr@integrable-solutions.net
Wed Nov 20 23:03:00 GMT 2002
The following reply was made to PR libstdc++/8230; it has been noted by GNATS.
From: Gabriel Dos Reis <gdr@integrable-solutions.net>
To: Benjamin Kosnik <bkoz@redhat.com>
Cc: bkoz@gcc.gnu.org, gcc-bugs@gcc.gnu.org, jkanze@caicheuvreux.com,
gcc-gnats@gcc.gnu.org, libstdc++@gcc.gnu.org
Subject: Re: libstdc++/8230: Buggy allocator behaviour
Date: 14 Nov 2002 21:39:50 +0100
Benjamin Kosnik <bkoz@redhat.com> writes:
| See attached patch for a way to fix this with the pool allocators.
I agree with your patch.
The following comment is for possible improvements. What about using
if (__builtin_expect(__ret == 0, 0))
__throw_bad_alloc("allocate::allocate");
?
That gives a hint to the compiler that the branch is expected to be
taken very unfrequently, and it should make scheduling accordingly.
In general, I would like to see us starting using use __builtin_expect()
at places where we do checks for limits cases. Thoughts?
-- Gaby
More information about the Gcc-prs
mailing list