[Patch, v7] DR 431 for sso/rc-strings

Paolo Carlini pcarlini@suse.de
Mon Nov 14 11:17:00 GMT 2005


Hi,

the below is a start on the work to implement Option 3, already briefly
discussed.

Most of this first part actually consisted in figuring out a
sufficiently flexible and reliable testing allocator, uneq_allocator,
which hopefully we can keep on using for string and for the containers.
And "testing" it on some new testcases, of course.

Otherwise, the string bits proper are rather obvious - when, at compile
time we know that the allocator is empty we can avoid completely the
swap - still, interestingly, the resulting code is measurably faster for
the common case of empty allocator (combined effect together with a bit
of reorganization of order of 20-30% at least, on x86-linux, but this is
not the place for detailed performance figures).

Tested x86-linux, both --enable-libstdcxx-string=sso/rc.

Paolo.

////////////////////
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: CL_431_string
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20051114/c77dc12c/attachment.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch_431_string
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20051114/c77dc12c/attachment-0001.ksh>


More information about the Libstdc++ mailing list