[cxx-abi-dev] comparing type_infos (was Re: Patch for throw/catch problems)

Mark Mitchell mark at codesourcery.com
Tue Aug 14 16:07:08 UTC 2001



--On Tuesday, August 14, 2001 11:05:31 AM -0400 Jakub Jelinek 
<jakub at redhat.com> wrote:

> On Tue, Aug 14, 2001 at 03:42:46PM +0100, Jason Merrill wrote:
>> >>>>> "Jason" == Jason Merrill <jason_merrill at redhat.com> writes:
>>
>> > I believe that this is a case of obsolete wording;

Maybe -- but it is what it says, and it is what people have implemented.
I know that there are C++ compilers out there with runtimes that do
pointer comparisons now...

Anyhow, there are two issues, both important:

  - What happens with RTLD_LOCAL?

  - How can we reduce startup cost?

They're somewhat different, even if they might have a related solution.

My opinion is that RTLD_LOCAL is not something we should even try to
get right.  It's way too hard.

Startup cost happens once per program, except for any excess memory
used that hangs around.  So, for a long-running application (anything
graphical definitely qualifies) this isn't *too* important, and there
are techniques (caching, prelinking) that can get around the problem.
On the other hand, there's no way I know of to recover the time you
lose by comparing type-infos slowly, and there really are programs
where that is the inner loop.

-- 
Mark Mitchell                mark at codesourcery.com
CodeSourcery, LLC            http://www.codesourcery.com



More information about the cxx-abi-dev mailing list