Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Callling clib from assembly language




On 17 Apr 2006, at 13:31, David N. Williams wrote:

That's a fine way to do it for non-PIC executables.
Your code is identical to the following when compiled under GCC with -mdynamic-no-pic:
#include <math.h>
static double (*mysqrtptr)(double) = sqrt;
double mysqrt(double d)
{
return mysqrtptr(d);
}

Many thanks, Matt, that's good to know! In this case, it appears I'm doing the right thing.

A downside is that you're getting code bloat this way, by having the call stub inside the code itself. If you so it exactly like gcc (with the stubs in their own section), then the linker will merge all stubs together (also from other objects calling these procedures) so that only one instance is left in the final binary (at least as long as all can be reached by the branches referring to it).



Jonas _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/email@hidden

This email sent to email@hidden
References: 
 >Callling clib from assembly language (From: "David N. Williams" <email@hidden>)
 >Re: Callling clib from assembly language (From: Matt Watson <email@hidden>)
 >Re: Callling clib from assembly language (From: "David N. Williams" <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.