libstdc++/8230: Buggy allocator behaviour
Gabriel Dos Reis
gdr@integrable-solutions.net
Thu Nov 14 12:43:00 GMT 2002
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-bugs
mailing list